<SEC-DOCUMENT>0001140361-24-049881.txt : 20241219
<SEC-HEADER>0001140361-24-049881.hdr.sgml : 20241219
<ACCEPTANCE-DATETIME>20241218213556
ACCESSION NUMBER:		0001140361-24-049881
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		117
CONFORMED PERIOD OF REPORT:	20241031
FILED AS OF DATE:		20241219
DATE AS OF CHANGE:		20241218

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			PHOTRONICS INC
		CENTRAL INDEX KEY:			0000810136
		STANDARD INDUSTRIAL CLASSIFICATION:	SEMICONDUCTORS & RELATED DEVICES [3674]
		ORGANIZATION NAME:           	04 Manufacturing
		IRS NUMBER:				060854886
		STATE OF INCORPORATION:			CT
		FISCAL YEAR END:			1031

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-39063
		FILM NUMBER:		241560812

	BUSINESS ADDRESS:	
		STREET 1:		15 SECOR ROAD
		STREET 2:		PO BOX 5226
		CITY:			BROOKFIELD
		STATE:			CT
		ZIP:			06804
		BUSINESS PHONE:		2037759000

	MAIL ADDRESS:	
		STREET 1:		15 SECOR ROAD
		STREET 2:		P O BOX 5226
		CITY:			BROOKFIELD
		STATE:			CT
		ZIP:			06804

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	PHOTRONIC LABS INC
		DATE OF NAME CHANGE:	19900514
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>ef20035608_10k.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:srt="http://fasb.org/srt/2024" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:cef="http://xbrl.sec.gov/cef/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:cyd="http://xbrl.sec.gov/cyd/2024" xmlns:plab="http://photronics.com/20241031" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
    <meta http-equiv="Content-Type" content="text/html"/>
</head>

<body style="background-color: #ffffff; color: #000000;">
<div id="DSPFiXBRLHidden" style="display: none;"><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" id="Fact_b49aebacda35420abc8699f4dad50f62" contextRef="c20231101to20241031" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" id="Fact_71059f6479804da79dec05322eea7748" contextRef="c20231101to20241031" format="ixt:date-month-day">10-31</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalYearFocus" id="Fact_d1bf612aa0c84301a93c5981f16f3d9a" contextRef="c20231101to20241031">2024</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" id="Fact_cfb52adfb60149e19dbe1f8dbb0eaa83" contextRef="c20231101to20241031">FY</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_0718902107a84606a76ce7065607afc0" contextRef="c20231101to20241031">0000810136</ix:nonNumeric><ix:nonNumeric name="plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod" id="Fact_5703f7f4215845d39c53f0c87db95a93" contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember">P7D</ix:nonNumeric><ix:nonNumeric name="plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod" id="Fact_fd0da33cff84449793d061ed13c41db6" contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MaximumMember">P21D</ix:nonNumeric><ix:nonNumeric name="plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod" id="Fact_0b61858f2adb4362aa480cffdbcf8a66" contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MinimumMember">P14D</ix:nonNumeric><ix:nonNumeric name="plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod" id="Fact_6a757c41eb204cc49bd749b3122d8f51" contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember">P14D</ix:nonNumeric><ix:nonNumeric name="plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod" id="Fact_9a2dc09c502043edb6ecdcfd73ea6e78" contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember">P2M</ix:nonNumeric><ix:nonNumeric name="plab:PeriodOfWarranty" id="Fact_8a2b9076b8e94965b895c6c0a1257b9a" contextRef="c20231101to20241031_RangeAxis_MinimumMember">P1M</ix:nonNumeric><ix:nonNumeric name="plab:NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" id="Fact_549b7473dfe1448fa5a93e38f911cb8c" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember">P6M</ix:nonNumeric><ix:nonNumeric name="plab:NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" id="Fact_19a45af3a76e4d89938605be47b11523" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember">P3D</ix:nonNumeric><ix:nonNumeric name="plab:ProductInvoiceTerm" id="Fact_599542974f764e109fc11a4ac9750c4f" contextRef="c20231101to20241031_RangeAxis_MinimumMember">P30D</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Fact_e8e8c545bc864b06b0577fcd644ac09b" contextRef="c20231031">http://fasb.org/us-gaap/2024#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Fact_b4cb7129b71940b6b50393ee53e87598" contextRef="c20241031">http://fasb.org/us-gaap/2024#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Fact_765cd50c756e45d59be9c0bd312deb00" contextRef="c20231031">http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Fact_8706baf0b4a0466d9ef2b89f59b7270e" contextRef="c20241031">http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Fact_4662dc911fd242c59f78644e7c671198" contextRef="c20231031">http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Fact_bac605cca03d4db9b005c1c5e38ebb4e" contextRef="c20241031">http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Fact_a0cf7b23a5be4102aba701801191947a" contextRef="c20231031">http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Fact_f2e4447e1ddf477e8d84073b9710c2d9" contextRef="c20241031">http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Fact_02bcc5c17bc34ac88d993f4748f0176e" contextRef="c20231031">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligationsCurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Fact_bcdd19554cb14a1b8addbc63acc37d1c" contextRef="c20241031">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligationsCurrent</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Fact_fc386990839946f5980f8174f7d08fe1" contextRef="c20231031">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligations</ix:nonNumeric><ix:nonNumeric name="us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Fact_b0c8a6aa29b74344a7a394c915c7fd4d" contextRef="c20241031">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligations</ix:nonNumeric><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_bbe2f99fe0104d4199695adc89834fdf" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember">P1Y</ix:nonNumeric><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_35a7636fabec45859dd6fb4811787cac" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MinimumMember">P1Y</ix:nonNumeric><ix:nonNumeric name="dei:AuditorFirmId" id="Fact_b11f4b2dbd9f4661a347df8580ddbb6b" contextRef="c20231101to20241031">34</ix:nonNumeric><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_f520198fe14d406c9ff80d8f033d2a8d" contextRef="c20241031" unitRef="U001" xsi:nil="true"></ix:nonFraction><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_19b61436ec7944569f11fd83664f4796" contextRef="c20231031" unitRef="U001" xsi:nil="true"></ix:nonFraction><ix:nonNumeric name="us-gaap:OperatingLossCarryforwardsExpirationDate" id="Fact_2e15202e5cff414388ac6f6c863b56a3" contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_DomesticCountryMember_RangeAxis_MinimumMember">2030-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLossCarryforwardsExpirationDate" id="Fact_34100c5eedc249c59a0ecd6f981b8cf9" contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember_RangeAxis_MinimumMember">2025-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLossCarryforwardsExpirationDate" id="Fact_347c339d30ed4499a61835a1dcf4e686" contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MinimumMember">2025-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:OperatingLossCarryforwardsExpirationDate" id="Fact_89a71140677543b98550247b393e4c6b" contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MaximumMember">2034-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9" contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_ResearchMember">2025-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_ada4c71dc88e4a1481325de16531bfdc" contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_ResearchMember">2044-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_ce8445dff0d5453f9609997657734e2d" contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember">2043-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_512726a9d52c48fe84be8a862e033b07" contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember">2044-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_8a8dcb3a0ef94c4ab0cae95b84da7412" contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember">2025-10-31</ix:nonNumeric><ix:nonNumeric name="us-gaap:TaxCreditCarryforwardExpirationDate" id="Fact_908a2b39d03e4d05baa4ed0f4cf2c141" contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember">2038-10-31</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="plab-20241031.xsd" xlink:type="simple"/></ix:references><ix:resources><xbrli:context id="c20231101to20241031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240428"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-04-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241212"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-12</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20221101to20231031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</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="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</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="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</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="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</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="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20231031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20241031_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240729to20241031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-07-29</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_CN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_KR"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_TW"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_EuropeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_LandMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_LandMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20180101to20180131_ConsolidatedEntitiesAxis_VariableInterestEntityNotPrimaryBeneficiaryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityNotPrimaryBeneficiaryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-01-01</xbrli:startDate><xbrli:endDate>2018-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PDMCXMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</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="c20221101to20231031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PDMCXMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_FinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_DebtInstrumentAxis_FinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20201231_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20210201to20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember_LeaseContractualTermAxis_MonthlyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:MonthlyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-02-01</xbrli:startDate><xbrli:endDate>2021-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FirstThreeMonthsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FirstThreeMonthsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowingNineMonthsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FollowingNineMonthsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowedByThirtySixMonthsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FollowedByThirtySixMonthsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20181130_DebtInstrumentAxis_ProjectLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-11-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_ProjectLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-11-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementGeographicalAxis_KR"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ProductOrServiceAxis_IntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementGeographicalAxis_OtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementGeographicalAxis_OtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</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="c20221101to20231031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementGeographicalAxis_OtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</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="c20221101to20231031_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementGeographicalAxis_EuropeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ProductOrServiceAxis_IntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</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="c20211101to20221031_StatementGeographicalAxis_KR"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</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="c20231101to20241031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</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="c20211101to20221031_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211101to20221031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</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="c20221101to20231031_ProductOrServiceAxis_FlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ProductOrServiceAxis_FlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</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="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementGeographicalAxis_TW"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementGeographicalAxis_CN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</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="c20211101to20221031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</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="c20231101to20241031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</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="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementGeographicalAxis_TW"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</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="c20221101to20231031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_StatementGeographicalAxis_EuropeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</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="c20221101to20231031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementGeographicalAxis_CN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</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="c20231031_BalanceSheetLocationAxis_OtherCurrentAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_BalanceSheetLocationAxis_OtherCurrentAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_BalanceSheetLocationAxis_AccruedLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_BalanceSheetLocationAxis_AccruedLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_BalanceSheetLocationAxis_OtherLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_BalanceSheetLocationAxis_OtherLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230315"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230316"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-16</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_AwardTypeAxis_EmployeeStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230316to20230316"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-03-16</xbrli:startDate><xbrli:endDate>2023-03-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_AwardTypeAxis_EmployeeStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_EmployeeStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</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="c20211101to20221031_IncomeStatementLocationAxis_CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</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="c20211101to20221031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</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="c20231101to20241031_IncomeStatementLocationAxis_CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis_ExecutiveOfficerMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</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="c20211101to20221031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</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="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_IncomeStatementLocationAxis_CostOfSalesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_AwardTypeAxis_EmployeeStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</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="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_AwardTypeAxis_RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_AwardTypeAxis_EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_IncomeTaxAuthorityAxis_ForeignCountryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_IncomeTaxAuthorityAxis_DomesticCountryMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeTaxAuthorityAxis_DomesticCountryMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_TaxCreditCarryforwardAxis_InvestmentCreditMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_TaxCreditCarryforwardAxis_ResearchMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_ResearchMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_ResearchMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</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="c20221101to20231031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociAttributableToNoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></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="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</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">plab:CustomerAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></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="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</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="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementGeographicalAxis_CN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementGeographicalAxis_KR"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementGeographicalAxis_TW"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementGeographicalAxis_TW"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementGeographicalAxis_EuropeAndOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:EuropeAndOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementGeographicalAxis_CN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementGeographicalAxis_KR"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_StatementGeographicalAxis_EuropeAndOtherMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:EuropeAndOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_MajorCustomersAxis_MajorCustomer1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_MajorCustomersAxis_MajorCustomer1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</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="c20231101to20241031_MajorCustomersAxis_MajorCustomer1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231031_MajorCustomersAxis_MajorCustomer1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_MajorCustomersAxis_MajorCustomer1Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20200930_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240828_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-08-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-01</xbrli:startDate><xbrli:endDate>2024-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-09-01</xbrli:startDate><xbrli:endDate>2023-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000810136</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</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:unit id="U001"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="U002"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U003"><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="U004"><xbrli:measure>plab:Facility</xbrli:measure></xbrli:unit><xbrli:unit id="U005"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U006"><xbrli:measure>iso4217:CNY</xbrli:measure></xbrli:unit><xbrli:unit id="U007"><xbrli:measure>plab:Executive</xbrli:measure></xbrli:unit><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_b6345882ec6e4416bf5caec90e37cb0e" toRefs="Foot_c1f2496a68c84bbb832393ee9845363b" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_26e56986bbb7429da0abfdf7e16023f6" toRefs="Foot_c1f2496a68c84bbb832393ee9845363b" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_1247915d6df5498893078c153721d5bc" toRefs="Foot_c1f2496a68c84bbb832393ee9845363b" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_42988dd9d64c4d60973a5a2c1243f674" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_b43febad08ae4b4b986cc014d9b85d9d" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_a5b6b365c7df4dd8b16cffe864a3cff2" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_ba63127f9d614ec28d81775a02acc680" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_a1e0b50b0c684fdd8e637f7d41980f66" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_fd69bfb6cfbd446c973089a5001d8511" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_2b0f7ff68d6f4359bd6720e33f04a097" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_362a6ee1bf6f42a7a72518d67cadb9f7" toRefs="Foot_0174683df2a3474f86a5d3d29d6bc184" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_7589dd8b6d604afeb7580519af0b90dd" toRefs="Foot_82f98204b90545f9a2190cdf977c581e" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_50ad7cbf76a84c49b0bd53e1c9116272" toRefs="Foot_82f98204b90545f9a2190cdf977c581e" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2" toRefs="Foot_9b6974bf9d974ee7b81365972f002e9c" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b" toRefs="Foot_9b6974bf9d974ee7b81365972f002e9c" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_e6627c80a6894038a54be755a3225811" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_4dce7369a28845e68c321739a577a851" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_1b42ed89ce72467e9f24f757bec11a5d" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_8ff2838ee6dc4512aa06ec699c769476" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_35854d804b334b9c9b3eb0b6e0ac2c89" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_8edef475eca146fea656f3ac6ecb40b6" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_0f49dbc742bf4724b0c04563d285b898" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_bab3969385964f59bb9d465daaa52cd7" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_a39ab698dda246128a7fea52caae3412" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_63df0cc6efd5410e80c9e935cb3bde36" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_088349b967de4f81b8ef3a709a736cb1" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_338e3ab939bd45cb990cb793b7134ab0" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_6542a345986a4ee3b10e2ebc866aff08" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_2f1a9c57ed5f43259e33217e21455068" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_22bc556d532d4520a3ba57e860fd19ce" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_0ddc9fddd34c4b8ebc3661af60847db3" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_3de40eda83a949d398b85b4d8623bb00" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_266e1d5ef9fc49278da67365acd002f2" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_4089a58279474338b8171e084881ec71" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_dba0aa5ba3d549caa6fe0049b46c9618" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_a6b804d848484f39b7f861b29939edbd" toRefs="Foot_d8a533a5ae26463280e109aabb6faf35" linkRole="http://www.xbrl.org/2003/role/link"/></ix:resources></ix:header></div>
<div style="line-height: initial;">

  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 14pt; font-weight: bold;">
      <hr style="border: none; border-bottom: 1px solid black; border-top: 4px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;"/></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 14pt; font-weight: bold;">UNITED STATES</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 14pt; font-weight: bold;">SECURITIES AND EXCHANGE COMMISSION</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 12pt;">Washington, D.C. 20549</div>

    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 18pt; font-weight: bold;">FORM <ix:nonNumeric name="dei:DocumentType" id="Fact_2142fa2e8a2a47979cd1d35b19b691b2" contextRef="c20231101to20241031">10-K</ix:nonNumeric></div>

    <div>(Mark One)<br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;">&#160;</td>

    <td style="width: 27pt; vertical-align: top; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentAnnualReport" id="Fact_666fb421247c44a2a01cf6517ef998bf" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric></td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</div>
          </td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">For the fiscal year ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" id="Fact_138402529ef14128a30ecad66bf881f0" contextRef="c20231101to20241031" format="ixt:date-monthname-day-year-en">October 31, 2024</ix:nonNumeric></div>

    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">OR</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;">&#160;</td>

    <td style="width: 27pt; vertical-align: top; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentTransitionReport" id="Fact_eb045cdcea144d4aa72d5d7e04891b64" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</div>
          </td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">For the transition period from ___ to ___</div>

    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Commission file number <ix:nonNumeric name="dei:EntityFileNumber" id="Fact_9a8be88c5ac64417b9eba8848cf58b0b" contextRef="c20231101to20241031">001-39063</ix:nonNumeric></div>

    <div><br/>
    </div>

    <div style="text-align: center;">
<div><img height="51" width="44" src="image00002.jpg" alt="graphic"/></div>

      <div><br/>
      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 24pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityRegistrantName" id="Fact_c61fd47dcd17428c860f8bc42323c0fe" contextRef="c20231101to20241031">PHOTRONICS INC</ix:nonNumeric></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(Exact name of registrant as specified in its charter)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 49%; vertical-align: top;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" id="Fact_9523400073d049f88bcec0f9eacbc86d" contextRef="c20231101to20241031" format="ixt-sec:stateprovnameen">Connecticut</ix:nonNumeric></div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" id="Fact_d262633f05a64b2e9f7d13f8729bdcbb" contextRef="c20231101to20241031">06-0854886</ix:nonNumeric></div>
          </td>

  </tr>

  <tr>

    <td style="width: 49%; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(State or other jurisdiction of incorporation or organization)</div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(IRS Employer Identification No.)</div>
          </td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" id="Fact_76f96765eb954f0db4a7091a8c24cd55" contextRef="c20231101to20241031">15 Secor Road</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_2133c4b92b094439a23648b4941722b5" contextRef="c20231101to20241031">Brookfield</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_75cb8226181c46dfa3571b2cf20d311b" contextRef="c20231101to20241031" format="ixt-sec:stateprovnameen">Connecticut</ix:nonNumeric>&#160;<ix:nonNumeric name="dei:EntityAddressPostalZipCode" id="Fact_2ea77abf7fed48c0996ddb808e10ec02" contextRef="c20231101to20241031">06804</ix:nonNumeric></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(Address of principal executive offices)(Zip Code)</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonNumeric name="dei:CityAreaCode" id="Fact_a1a12e25b42a4ec1a354872fc4eb51bc" contextRef="c20231101to20241031">203</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_ccec46d7b76f458cb8dbf3ee7bf7608d" contextRef="c20231101to20241031">775-9000</ix:nonNumeric></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(Registrant&#8217;s telephone number, including area code)</div>

    <div><span style="font-style: normal;"><br/>
      </span> </div>

    <div><span style="font-style: normal;"> </span></div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal;">Securities registered pursuant to Section 12(b) of the Act:</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 33%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Title of each class</div>
          </td>

    <td style="width: 34%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">&#160;</span><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(35, 31, 32);">Trading Symbol(s)</span></div>
          </td>

    <td style="width: 33%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Name of each exchange on which registered</div>
          </td>

  </tr>

  <tr>

    <td style="width: 33%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:Security12bTitle" id="Fact_cc3bb504ab5349a58d90b9f933e516f0" contextRef="c20231101to20241031">COMMON</ix:nonNumeric></div>
          </td>

    <td style="width: 34%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<ix:nonNumeric name="dei:TradingSymbol" id="Fact_8a08cde01ce84517b5a6593409f2021a" contextRef="c20231101to20241031">PLAB</ix:nonNumeric></div>
          </td>

    <td style="width: 33%; vertical-align: top; border-left: #000000 2px solid; border-right: #000000 2px solid; border-top: #000000 2px solid; border-bottom: #000000 2px solid;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:SecurityExchangeName" id="Fact_1a4ab391f3654cd6bbe2e1cd63a3dc85" contextRef="c20231101to20241031">NASDAQ</ix:nonNumeric> Global Select Market</div>
          </td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Securities registered pursuant to Section 12(g) of the Act:</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">None</div>

    <div><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Yes <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span> <ix:nonNumeric name="dei:EntityWellKnownSeasonedIssuer" id="Fact_c307c24cb2724acda77992b07a95c8a4" contextRef="c20231101to20241031">No</ix:nonNumeric> <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span></div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. Yes <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span>&#160;<ix:nonNumeric name="dei:EntityVoluntaryFilers" id="Fact_670dac41579c4e14879acf8bbf5ff24a" contextRef="c20231101to20241031">No</ix:nonNumeric>&#160;<span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span></div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act
      of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. <ix:nonNumeric name="dei:EntityCurrentReportingStatus" id="Fact_e167ab88a93f4a3dad5dc463335b0873" contextRef="c20231101to20241031">Yes</ix:nonNumeric>&#160;<span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span> No <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">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 (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <span style="font-size: 10pt; font-family: 'Times New Roman';"><ix:nonNumeric name="dei:EntityInteractiveDataCurrent" id="Fact_f2c8730e326f45beb7725e8458e50209" contextRef="c20231101to20241031">Yes</ix:nonNumeric> &#9746;</span> No <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer or a smaller reporting
      company. See definition of &#8220;accelerated filer,&#8221; &#8220;large accelerated filer,&#8221; &#8220;smaller reporting company&#8221;, and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act. (Check one):</div>

    <div><br/>
    </div>

    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 20.44%; vertical-align: bottom; text-align: center;"><br/>
              <ix:nonNumeric name="dei:EntityFilerCategory" id="Fact_10da3f30b47f4eaa911a3963428a0a7c" contextRef="c20231101to20241031">Large Accelerated Filer</ix:nonNumeric></td>

    <td style="width: 15.42%; vertical-align: bottom;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accelerated Filer</div>
            </td>

    <td style="width: 22.66%; vertical-align: bottom;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-Accelerated Filer</div>
            </td>

    <td style="width: 21.49%; vertical-align: middle; font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: center; color: rgb(0, 0, 0);">Smaller</div>
              <div style="text-align: center; color: rgb(0, 0, 0);">Reporting Company</div>
            </td>

    <td style="width: 20%; vertical-align: middle; font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: center; color: rgb(0, 0, 0);">Emerging</div>
              <div style="text-align: center; color: rgb(0, 0, 0);">Growth company</div>
            </td>

  </tr>

  <tr>

    <td style="width: 20.44%; vertical-align: middle; text-align: center;">&#9746;</td>

    <td style="width: 15.42%; vertical-align: middle;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#9744;</div>
            </td>

    <td style="width: 22.66%; vertical-align: middle;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#9744;</div>
            </td>

    <td style="width: 21.49%; vertical-align: middle;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:EntitySmallBusiness" id="Fact_1f2b09c740404fe7bec9ef14b6d9d5a1" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric><br/>
              </div>
            </td>

    <td style="width: 20%; vertical-align: middle;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:EntityEmergingGrowthCompany" id="Fact_762a19f50bfb43cf999773519c866e48" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric><br/>
              </div>
            </td>

  </tr>


</table>
    </div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">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. <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;<br/>
      </span></div>

    <div><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal
      control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act ((&#167;15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. <ix:nonNumeric name="dei:IcfrAuditorAttestationFlag" id="Fact_bbc27b4292a4467ebc6d54915561242c" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric> <br/>
    </div>

    <div><br/>
    </div>

    <div>If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements. <ix:nonNumeric name="dei:DocumentFinStmtErrorCorrectionFlag" id="Fact_fc3c28e5c2094c51aa56ff5b670b9362" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric> </div>

    <div><br/>
    </div>

    <div>Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant&#8217;s executive officers during the relevant recovery period pursuant to
      &#167;240.10D-1(b). &#9744;<br/>
      <br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes <span style="font-size: 10pt; font-family: 'Times New Roman';"><ix:nonNumeric name="dei:EntityShellCompany" id="Fact_7a998055fe004935b97b5a65079212b9" contextRef="c20231101to20241031" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span>&#160; No <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span></div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">As of April 28, 2024, which was the last business day of the registrant&#8217;s most recently completed second fiscal quarter, the aggregate market value
      of the shares of the registrant&#8217;s common stock held by non-affiliates was approximately $<ix:nonFraction name="dei:EntityPublicFloat" id="Fact_bf850bef924348d2806b3f39c8ea4d82" contextRef="c20240428" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">1,729,553,783</ix:nonFraction> (based upon the closing price of
      $28.28 per share as reported by the NASDAQ Global Select Market on that date).</div>

    <div><br/>
    </div>

    <div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">As of December 12, 2024, <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" id="Fact_678b1444e0f6440c9ae183ddaba823da" contextRef="c20241212" unitRef="U002" decimals="INF" scale="0" format="ixt:num-dot-decimal">63,335,388</ix:nonFraction>
      shares of the registrant&#8217;s common stock were outstanding.</div>

    <div><br/>
    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">DOCUMENTS INCORPORATED BY REFERENCE</div>

    <div><br/>
      <span style="font-size: 10pt; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">Portions of our Proxy Statement for the
        2025 Annual <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Meeting of Shareholders to
          be filed with the U.S. Securities and Exchange Commission pursuant to regulation 14A under the Securities Exchange Act of 1934, as amended are incorporated by reference into Part III of this Annual Report on Form 10-K.</span><br/>
      </span></div>

    <div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
      <hr style="border: none; border-bottom: 4px solid black; border-top: 1px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;"/></div>

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

    </div>

    <!--PROfilePageNumberReset%Num%2%%%--> </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <hr style="background-color: #000000; border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; color: #000000;"/>
      <div>
        <div style="text-align: center; font-weight: bold;">PHOTRONICS, INC.</div>

        <div style="text-align: center; font-weight: bold;">ANNUAL REPORT ON FORM 10-K</div>

        <div style="text-align: center; font-weight: bold;">OCTOBER 31, 2024</div>

        <div><br/>
        </div>

        <div style="text-align: center; font-weight: bold;"><a id="TABLEOFCONTENTS"><!--Anchor--></a><span style="text-decoration: underline;">TABLE OF CONTENTS</span></div>

        <div><br/></div>

        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 91%; vertical-align: top;" rowspan="1"><br/>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right;" rowspan="1"><span style="text-decoration: underline;">Page</span></td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;" rowspan="1"><br/>
              </td>

    <td style="width: 9%; vertical-align: top;" rowspan="1"><br/>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#GlossaryofTermsandAcronym">Glossary of Terms and Acronyms</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="text-align: right;">3</div>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#CautionaryStatementRegard">Cautionary Statement Regarding Forward-Looking Statements</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="text-align: right;">4</div>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;"><span style="text-decoration: underline;">PART I:</span></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#BUSINESS">ITEM 1. BUSINESS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;5</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#RISKFACTORS">ITEM 1A. RISK FACTORS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="text-align: right;">11</div>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#UNRESOLVEDSTAFFCOMMENTS">ITEM 1B. UNRESOLVED STAFF COMMENTS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;20</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#CYBERSECURITY">ITEM 1C. CYBERSECURITY</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;20</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#PROPERTIES">ITEM 2. PROPERTIES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">22</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#LEGALPROCEEDINGS">ITEM 3. LEGAL PROCEEDINGS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">22</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#MINESAFETYDISCLOSURES">ITEM 4. MINE SAFETY DISCLOSURES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">22</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;"><span style="text-decoration: underline;">PART II:</span></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#MARKETFORREGISTRANTSCOMMO">ITEM 5. MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">23</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">
                <div><br/>
                </div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#RESERVED">ITEM 6. [RESERVED]</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">24</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#MANAGEMENTSDISCUSSIONANDA">ITEM 7. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">25</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#QUANTITATIVEANDQUALITATIV">ITEM 7A. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">36</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#FINANCIALSTATEMENTSANDSUP">ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">37</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#CHANGESINANDDISAGREEMENTS">ITEM 9. CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">72</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#CONTROLSANDPROCEDURES">ITEM 9A. CONTROLS AND PROCEDURES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">72</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#OTHERINFORMATION">ITEM 9B. OTHER INFORMATION</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">74</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#DISCLOSUREREGARDINGFOREIG">ITEM 9C. DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">74</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;"><span style="text-decoration: underline;">PART III:</span></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#DIRECTORSEXECUTIVEOFFICER">ITEM 10. DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">74</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#EXECUTIVECOMPENSATION">ITEM 11. EXECUTIVE COMPENSATION</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;74</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#SECURITYOWNERSHIPOFCERTAI">ITEM 12. SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">75</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#CERTAINRELATIONSHIPSANDRE">ITEM 13. CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="text-align: right;">75</div>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#PRINCIPALACCOUNTANTFEESAN">ITEM 14. PRINCIPAL ACCOUNTANT FEES AND SERVICES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;75</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;"><span style="text-decoration: underline;">PART IV:</span></div>
              </td>

    <td style="width: 9%; vertical-align: top; text-align: right; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#EXHIBITSANDFINANCIALSTATE">ITEM 15. EXHIBITS AND FINANCIAL STATEMENT SCHEDULES</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div style="text-align: right;">76</div>
              </td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top;">&#160;</td>

    <td style="width: 9%; vertical-align: top; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91%; vertical-align: top; background-color: rgb(204, 238, 255);">
                <div><a href="#FORM10-KSUMMARY">ITEM 16. FORM 10-K SUMMARY</a></div>
              </td>

    <td style="width: 9%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">80</td>

  </tr>


</table>
      </div>

      <div><br/>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">2</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <div>
        <div style="text-align: center; font-weight: bold;"><a id="GlossaryofTermsandAcronym"><!--Anchor--></a>Glossary of Terms and Acronyms</div>

        <div><br/>
        </div>

        <div>Definitions of certain terms and acronyms that may appear in this report are provided below.</div>

        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">AMOLED</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Active-matrix organic light-emitting diode. A technology used in mobile devices.</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">Application-specific IC</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>An integrated circuit customized for a particular use, rather than intended for general-purpose use</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">ASC</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Accounting Standards Codification</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">ASP</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Average Selling Price</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">ASU</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Accounting Standards Update</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">CHIPS Act</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>
                  <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">U.S. CHIPS and Science Act of 2022</div>
                </div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">DNP</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Dai Nippon Printing Co., Ltd.</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">EUV</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>A wafer lithography technology using the industry standard extreme ultraviolet (EUV) wavelength. EUV photomasks function by selectively reflecting or blocking light, in contrast to conventional photomasks which function by selectively
                  transmitting or blocking light</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">Exchange Act</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>The Securities Exchange Act of 1934 (as amended)</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">FASB</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Financial Accounting Standards Board</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">Form 10-K</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Annual Report on Form 10-K</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">Form 10-Q</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Quarterly Report on Form 10-Q</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">FPDs</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Flat-panel displays, or &#8220;displays&#8221;</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">Generation</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>In reference to flat panel displays, refers to the size range of the underlying substrate to which a photomask is applied. Higher generation (or &#8220;G&#8221;) numbers represent larger substrates</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">High-end (photomasks)</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>For IC, photomasks that are 28nm or smaller; for FPD, AMOLED, G10.5+, and LTPS photomasks</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">ICs</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Integrated circuits, or semiconductors</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">LTPS</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Low-Temperature Poly Silicon, a polycrystalline silicon synthesized at relatively low temperatures; polycrystalline silicon in thin-film transistors (TFTs) are used in liquid-crystal display (LCD) flat panels and to drive organic
                  light-emitting diode (OLED) displays</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">Optical proximity correction</div>
              </td>

    <td style="width: 75%; vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>A photolithography enhancement technique applied to compensate for the limitations of light to maintain the edge placement integrity of an original design, imaged onto a silicon wafer, for further processing to an etched pattern.</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">PDMCX</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Xiamen American Japan Photronics Mask Co., Ltd., a joint venture of Photronics and DNP</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">RMB</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Chinese renminbi</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">ROU (assets)</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Right-of-use asset</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">SEC</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>Securities and Exchange Commission</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">Securities Act</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>The Securities Act of 1933 (as amended)</div>
              </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">SOC-1 report</div>
              </td>

    <td rowspan="1" style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Service Organization Control 1 report</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div style="font-weight: bold;">U.S. GAAP</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
                <div>Accounting principles generally accepted in the United States of America</div>
              </td>

  </tr>

  <tr>

    <td style="width: 25%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div style="font-weight: bold;">Wafer</div>
              </td>

    <td style="width: 75%; vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">
                <div>A wafer, or silicon wafer, is a thin slice of semiconductor material that, in the fabrication of microelectronics, serves as the substrate for microelectronic devices built in and upon the wafer</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div>All references to &#8220;2024&#8221;, &#8220;2023&#8221;, and &#8220;2022&#8221; are to our fiscal years ended on October 31 of those years, unless otherwise stated.</div>

        <div> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">3</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-align: center;"><span style="font-weight: bold;">Cautionary Statement Regarding</span>&#160;<a id="CautionaryStatementRegard"><!--Anchor--></a><span style="font-weight: bold;">Forward-Looking Statements</span></div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div>This Form 10-K contains forward-looking statements, as defined by the SEC. The Private Securities Litigation Reform Act of 1995 provides a &#8220;safe harbor&#8221; for forward-looking statements made by us, or on our behalf. Forward-looking statements
            are statements other than statements of historical fact, including, without limitation, those statements that include such words as &#8220;anticipates&#8221;, &#8220;believes&#8221;, &#8220;estimates&#8221;, &#8220;expects&#8221;, &#8220;intends&#8221;, &#8220;may&#8221;, &#8220;plans&#8221;, &#8220;predicts&#8221;, and similar
            expressions, and, without limitation, may address our future plans, objectives, goals, strategies, events, or performance, as well as underlying assumptions and other statements that are other than statements of historical facts. On occasion,
            in other documents filed with the SEC, press releases, conferences, or by other means, we may discuss, publish, disseminate, or otherwise make available, forward-looking statements, including statements contained within Part II, Item 7 &#8211;
            &#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations&#8221; of this Form 10-K. </div>

          <div><br/>
          </div>

          <div>Forward-looking statements involve risks and uncertainties, which could cause actual results or outcomes to differ materially from those expressed. Our expectations, beliefs and projections are expressed in good faith and are believed by us
            to have a reasonable basis, including, without limitation, management&#8217;s examination of historical operating trends, information contained in our records, and information we&#8217;ve obtained from other parties. However, we can offer no assurance that
            our expectations, beliefs, or projections will be realized, accomplished or achieved. </div>

          <div><br/>
          </div>

          <div>Forward-looking statements within this Form 10-K speak only as of the date of its filing, and we undertake no obligation to update any such statements to reflect changes in events or circumstances that may subsequently occur. Users of this
            Form 10-K are cautioned that various factors may cause actual results to differ materially from those contained in any forward-looking statements found within this Form 10-K and that they should not place undue reliance on any forward-looking
            statement. In addition, all forward-looking statements, whether written or oral and whether made by us or on our behalf, are expressly qualified by the risk factors provided in Part I, Item 1A &#8220;Risk Factors&#8221; of this Form 10-K. </div>

        </div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">4</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-align: center; font-weight: bold;">PART I</div>

        <div><br/>
        </div>

        <a id="BUSINESS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 1.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">BUSINESS</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Specific industry and technical terms used in this section are defined in the subsection entitled &#8220;Glossary of Terms and Acronyms,&#8221; found below the Table of Contents.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Business Overview</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Photronics, Inc. (and its subsidiaries, collectively referred to herein as &#8220;Photronics&#8221;, the &#8220;Company&#8221;, &#8220;we&#8221;, &#8220;our&#8221;, or &#8220;us&#8221;) is one of the world&#8217;s
            leading <span style="font-size: 10pt; font-family: 'Times New Roman';">manufacturers</span> of photomasks, which are high precision photographic quartz or glass plates containing microscopic images of electronic circuits. Photomasks are a key
            element in the manufacture of ICs and FPDs and are used as masters to transfer circuit patterns onto semiconductor wafers and FPD substrates during the fabrication of ICs, a variety of FPDs and, to a lesser extent, other types of electrical and
            optical components. We have eleven manufacturing facilities, which are located in Taiwan (3), China (2), Korea (1), the United States (3), and Europe (2).</div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our principal executive offices are located at 15 Secor Road, Brookfield, Connecticut, 06804, telephone (203) 775-9000. Our website address is http://www.photronics.com. We make available, free of charge through our
          website, our Forms 10-K, Definitive Proxy Statements on Schedule 14A, Forms 10-Q, Current Reports on Form 8-K, and any amendments to these reports as soon as reasonably practicable after such materials are electronically filed with or furnished
          to the SEC. The information found on, or incorporated into, our website is not part of this or any other report we file with or furnish to the SEC. The SEC also maintains a website at http://www.sec.gov that contains reports, proxy statements and
          other information regarding SEC registrants, including Photronics.</div>

        <div><br/>
        </div>

        <div style="text-align: justify; color: rgb(43, 43, 43); font-weight: bold;">Segment</div>

        <div>&#160;</div>

        <div style="text-indent: 18pt;">We operate as a single reporting segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing microscopic images of electronic circuits for use in the fabrication of IC&#8217;s and
          FPDs. In accordance with ASC 280 &#8211; &#8220;Segment Reporting&#8221; Topic of the ASC, the Company&#8217;s chief operating decision maker has been identified as the Chief Executive Officer, who reviews operating results to make decisions about allocating resources
          and assessing performance for the entire Company. Existing guidance, which is based on a management approach to segment reporting, establishes requirements to report selected segment information quarterly and to report annually entity-wide
          disclosures about products and services, major customers, and the countries in which the entity holds material assets and reports revenue. All material operating units qualify for aggregation under &#8220;Segment Reporting&#8221; due to their similar
          customer base and similarities in: economic characteristics; nature of products and services; and procurement, manufacturing and distribution processes. Since the Company operates in one segment, all financial information required by &#8220;Segment
          Reporting&#8221; can be found in the accompanying consolidated financial statements.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Industry</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">We manufacture photomasks, which are used as masters to transfer circuit patterns onto semiconductor wafers and FPD substrates. The photomasks we
            manufacture incorporate circuit designs provided to us on a confidential basis by our customers. Photomasks are typically sold in sets comprised of layers, with each layer having a distinct pattern that is etched onto a different photomask. The
            resulting series of photomasks is then used to image the circuit patterns onto each successive layer of a semiconductor wafer or FPD substrate. The typical manufacturing process for a photomask involves the receipt and conversion of circuit
            design data to manufacturing pattern data. A lithography system then exposes the circuit pattern onto a photomask blank. The exposed areas are developed and etched to imprint the pattern on the photomask. The photomask is then inspected for
            defects and conformity to the customer's design data. After the repair of any defects, the photomask is cleaned, any required pellicles (protective translucent membranes) are applied and, after final inspection, the photomask is shipped to the
            customer.</div>

        </div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">5</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-indent: 18pt;">&#8220;High-end&#8221; photomasks support 28 nanometer and smaller design nodes for ICs and Generation 10.5+, AMOLED, and LTPS display-based process technologies for FPDs. However, 32 nanometer and above geometries for
          semiconductors and Generation 8 and below (excluding AMOLED and LTPS) process technologies for displays, which we refer to as &#8220;mainstream&#8221; photomasks, constitute the majority of designs currently being fabricated in volume. At these geometries
          and at various high-end nodes, we can produce full lines of photomasks. Moreover, there is no significant technology employed by our competitors that is not available to us. We expect advanced-generation designs to continue to be developed, and
          we believe we are well positioned to service an increasing volume of this business as a result of our ongoing investments in manufacturing processes and technology in the regions where our customers are located.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Generally, Photronics and each of its customers engage in a qualification and correlation process before we become an approved supplier. Thereafter, based on the customer&#8217;s specifications, we typically negotiate
          pricing parameters for the customer&#8217;s order. Some prices may remain in effect for an extended period of time. In many instances, we enter into sales arrangements with an understanding that, as long as our performance is competitive, we will
          receive a specified percentage of that customer&#8217;s photomask orders.</div>

        <div><br/>
        </div>

        <div style="text-align: justify; text-indent: 18pt;">The first several layers of photomasks are sometimes required to be delivered to customers within twenty-four hours from the time we receive customer design data. Because of the short period
          between order and shipment dates (typically from one day to three weeks) for a significant amount of our revenue, the dollar amount of our current backlog is not a reliable indicator of future revenue. However, the demand for some IC photomasks
          can extend over the traditional time period; thus, for some products, our backlog can expand to as long as two to three months.</div>

        <div>&#160;</div>

        <div style="text-indent: 18pt;">The ability to manufacture high-quality photomasks within short time periods is dependent upon robust processes, efficient manufacturing methods, high production yield, available manufacturing capacity, and high
          equipment reliability. We work to meet these requirements by making significant investments in research and development, manufacturing capacity, preventive and on-going equipment maintenance programs, manufacturing and data processing systems,
          and by utilizing statistical process control methods to optimize our manufacturing processes and reduce cycle times.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Quality control is an integral part of the photomask manufacturing process. Photomasks are manufactured in temperature, humidity, and particulate-controlled clean rooms because of the high level of precision, quality
          and manufacturing yield required. Each photomask is inspected several times during the manufacturing process to ensure compliance with customer specifications. We continue to make substantial investments in equipment to produce, inspect and
          repair photomasks to ensure that customer specifications are met.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;">Sales and Marketing</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We conduct our sales and marketing activities primarily through a staff of full-time sales personnel and customer service representatives who work closely with the Company&#8217;s management and technical personnel. We
          support non-U.S. customers through both our domestic and foreign facilities and consider our presence in non-U.S. markets to be an important factor in attracting new customers, as it provides global solutions to our customers, minimizes delivery
          time, and allows us to serve customers that utilize manufacturing foundries outside of the United States, principally in Asia. See Note 10 and Note 18 to our consolidated financial statements in Part II, Item 8 of this report for the amount of
          revenue and long-lived assets attributable to each of our geographic areas of operations.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;">Research and Development</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><a id="z_Hlk178234663"></a>We primarily conduct research and development activities for IC photomasks at our Boise, Idaho, facility and, to a
            lesser degree, Photronics DNP Mask Corporation (&#8220;PDMC&#8221;), our joint-venture subsidiary in Taiwan. Research and development for FPD photomasks is primarily conducted at Photronics Korea, Ltd., our subsidiary in South Korea. Additionally, we
            conduct site-specific research and development programs to support local, strategic customer roadmaps. All of these research and development programs and activities are undertaken to advance our competitiveness in technology and manufacturing
            efficiency. We also conduct application-oriented research and development, including data and service technology to support the integration of photomasks into customer processes. Currently, research and development for IC photomasks are
            primarily focused on photomasks enabling wafer geometries of 14 nanometer node and smaller, including EUV and, for FPDs, on Generations 8 and 10 substrate size photomasks for new TV technologies, emerging opportunities for micro- and mini-LED
            displays, and photomask technology <span style="font-size: 10pt; font-family: 'Times New Roman';">needed </span>for the complex FPD photomasks required in the manufacture of advanced mobile displays, such as AMOLED. We believe these core
            competencies will continue to be a critical part of semiconductor and FPD manufacturing, as wafer and FPD substrate optical lithography continues to enable new high-end ICs and displays. We incurred research and development expenses of $16.6
            million, $13.7 million, and $18.3 million in 2024, 2023 and 2022, respectively. It is our belief that we own, control, or license the proprietary information (including trade secrets and patents) that we need to continue to meet our customers&#8217;
            requirements. Accordingly, we devote a significant portion of our human and financial resources to R&amp;D programs and seek to maintain close relationships with customers to remain responsive to their needs. We also believe that our
            intellectual property and trade secret know-how will continue to be important to maintaining <span style="font-size: 10pt; font-family: 'Times New Roman';">our </span>technical leadership and competitive position in the field of photomasks.</div>

        </div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">6</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-weight: bold;">Markets</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The customers for photomasks are primarily semiconductor and FPD manufacturers and to a lesser degree fabless design and equipment companies serving those industries.&#160; The size of the photomask market is driven by
          the number of designs released to support IC and FPD product introductions and manufacturing expansions.&#160; The photomasks required for those designs are manufactured by independent merchant manufacturers like Photronics and by semiconductor and
          FPD manufacturers that produce photomasks for their own use (captive manufacturers). In rare instances, captive manufacturers also sell to other semiconductor or FPD manufacturers.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The <span style="font-size: 10pt; font-family: 'Times New Roman';">production </span>value of <span style="font-size: 10pt; font-family: 'Times New Roman';">photomasks</span> produced by merchant suppliers has transitioned from a period when there was a trend toward the divesture or closing of captive photomask operations by semiconductor manufacturers, and <span style="font-size: 10pt; font-family: 'Times New Roman';">to </span>an increase in the share of the market served by independent merchant manufacturers<span style="font-size: 10pt; font-family: 'Times New Roman';">, like Photronics</span>. This trend was
            driven by the increased complexity and cost of capital equipment used in manufacturing photomasks<span style="font-size: 10pt; font-family: 'Times New Roman';">,</span> and the lack of economy of scale for many semiconductor and FPD
            manufacturers to effectively utilize the equipment.</div>

        </div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
            <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">That period was followed by a period during which, in order to reach certain roadmap milestones, some captive mask facilities invested at faster
              rates than independent manufacturers, and the revenue share of market transitioned back to photomasks being majority captive-supplied.&#160; More recently, there has been a tendency of more production being directed to the independent merchant
              manufacturers, with market share moving toward the independents. Nevertheless, most captive manufacturers maintain business and technology relationships with independent photomask manufacturers for ongoing support.</div>

          </div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">We support customers across the full spectrum of IC <span style="font-size: 10pt; font-family: 'Times New Roman';">and FPD </span>production by
            manufacturing photomasks using electron beam or optical (laser-based) lithography systems. For IC photomasks, the predominant writing technology used for advanced photomasks with fine-scale resolution requirements is electron beam writing
            systems, while FPD mask fabrication utilizes optical writing systems. These systems are capable of producing the most advanced semiconductor and display photomasks for use in an array of products. End markets served with IC photomasks include
            devices used for <span style="font-size: 10pt; font-family: 'Times New Roman';">artificial intelligence, cloud computing, </span>microprocessors, memory, telecommunications, <span style="font-size: 10pt; font-family: 'Times New Roman';">internet
















              connected devices, automotive, industrial</span> and other applications. We own a number of both high-end and mature electron beam and laser-based lithography systems.</div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We sell our products primarily to leading semiconductor and FPD designers and manufacturers. These include integrated device manufacturers, fabless semiconductor companies, and &#8220;pure-play&#8221; foundries. During 2024, we
          sold our products to approximately 675 customers. Revenue from United Microelectronics Corp. Co., Ltd. accounted for approximately 15%, 14% and 15% of our total revenues in 2024, 2023 and 2022, respectively, and revenue from Samsung Electronics
          Co., Ltd. accounted for approximately 12%, 10% and 11% of our total revenues in those respective years. In addition, revenue from Semiconductor Manufacturing International Corporation accounted for approximately 9%, 13% and 5% of our total
          revenues in 2024, 2023 and 2022, respectively. Our five largest customers, in the aggregate, accounted for approximately 50%, 51% and 45% of our revenue in 2024, 2023 and 2022, respectively. A significant decrease in the amount of revenue from
          any of these customers could have a material adverse effect on our financial performance and business prospects.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;">Competition</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The photomask industry is highly competitive, and most of our customers utilize multiple photomask suppliers. Our ability to compete depends primarily upon the consistency of our product quality, timeliness of
          delivery, competitive pricing, technical capability, and service, which we believe are the principal factors considered by customers in selecting their photomask suppliers. An inability to meet these requirements could adversely affect our
          financial condition, results of operations, and cash flows. We also believe that geographic proximity to customers is an important factor in certain markets where cycle time from order to delivery is critical. While some of our competitors may
          have greater financial, sales, marketing, or other resources than Photronics, we believe that we are able to compete effectively because of our dedication to customer service, ongoing investments in state-of-the-art photomask equipment and
          facilities, and experienced technical employees.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">7</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div>
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;">Using market data from research firm Tech Insights, the total market for IC photomasks is approximately 7.8B USD (2023) and, based on internal
              estimates, the total market for FPD masks is approximately 930M <span style="font-size: 10pt; font-family: 'Times New Roman';">USD </span>(2023).&#160;&#160; Our competitors include Compugraphics International, Ltd., Dai Nippon Printing Co., Ltd
              (outside of Taiwan and China), Hoya Corporation, LG Innotek Co., Ltd., Shenzhen Newway Photomask Making Co., Ltd., Shenzhen Qingyi Photomask, Ltd., SK-Electronics Co., Ltd., Taiwan Mask Corporation, and Toppan Electronics Products Co., Ltd.
              We also compete with semiconductor and FPD manufacturers' captive photomask manufacturing operations that supply photomasks for internal use and, in some instances, also for external customers and foundries. We expect to face continued
              competition which, in the past, has led to pressure to reduce prices. We believe the pressure to reduce prices, together with the significant investment required in capital equipment to manufacture high-end photomasks will continue in the
              future.</div>

          </div>

        </div>

        <div><br/>
        </div>

        <div style="font-style: italic;">International Operations</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Revenues from our non-U.S. operations<span style="font-weight: bold;">&#160;</span>were approximately 83%, 86% and 85% of our total revenues in 2024, 2023 and 2022, respectively. We believe that our ability to serve
          non-U.S. markets is enhanced by our having, among other things, a local presence in the markets we serve. This requires significant investments in financial, managerial, operational, and other resources.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Sales and operations outside of the United States are subject to inherent risks, and may be adversely affected by fluctuations in currency exchange rates, the imposition of government controls, political and economic
          conditions in various countries, legal compliance and regulatory requirements, tariffs and other trade barriers, difficulties with staffing and managing international operations, longer accounts receivable collection cycles, potential
          restrictions on transfers of funds, and potentially adverse tax consequences. These factors may have a material adverse effect on our ability to generate revenue outside of the United States and may require us to deploy resources where they could
          otherwise be used to their greatest advantage. Notes 10 &#8211; <span style="font-style: italic;">Revenue </span>and Note 18 &#8211; <span style="font-style: italic;">Risks and Concentrations</span> of our consolidated financial statements, in Part II,
          Item 8 of this report, respectively, present our revenue and long-lived assets by geographic area. These factors, as well as any of the other risk factors related to our international business and operations that are described in Item 1A &#8220;Risk
          Factors,&#8221; could have a material adverse effect on our future business and financial results.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Resources</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials used by Photronics generally include: high precision quartz <span style="font-size: 10pt; font-family: 'Times New Roman';">substrates</span>
            (including large area <span style="font-size: 10pt; font-family: 'Times New Roman';">substrates for FPD</span>), which are used as photomask<span style="font-size: 10pt; font-family: 'Times New Roman';"> starting</span> blanks and are
            primarily obtained from Japanese and Korean suppliers; pellicles and electronic grade chemicals, which are used in the manufacturing process; and compacts, which are durable plastic containers in which photomasks are shipped. These materials
            are generally sourced from several suppliers. We believe that our utilization of a select group of strategic suppliers enables us to access the most technologically advanced materials available. On an ongoing basis, we continue to consider
            additional supply sources.</div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We typically enter into annual pricing agreements with our suppliers, some of which include volume-based incentives that have resulted in substantial cost savings; these agreements do not require us to purchase
          minimum dollar amounts or quantities of their subject materials.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We rely on a limited number of equipment suppliers to develop and provide the equipment used in the photomask manufacturing process. Although, historically, we have been able to obtain equipment on a timely basis, an
          inability to obtain or repair equipment when required could have a material adverse effect on our business and results of operations.</div>

        <div><br/>
        </div>

        <div style="font-style: normal; font-weight: bold;">Intellectual Property Rights</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We have developed and hold ownership interests in intellectual property (&#8220;IP&#8221;) rights, in the forms of patents issued in the U.S., and other trademark and trademark registrations in the U.S. and other countries.
          Patents in which we hold ownership interests generally relate to the manufacture of photomasks or the use of photomasks to manufacture other products. While we believe that our IP rights are, and will continue to be, important to our technical
          leadership in the field of photomasks, our operations are not dependent on any one individual IP right. In addition to patenting, when practicable, we further protect our IP rights, and our other proprietary processes and trade secrets, by
          utilizing non-disclosure agreements with employees, customers, and vendors.</div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">8</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0);"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-weight: bold;">Seasonality</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our business is typically impacted during the first quarter of our fiscal year by the North American, European, and Asian holiday periods, as some customers reduce their development and buying activities during those
          periods.</div>

        <div><br/></div>

        <div style="font-weight: bold;">Government Contracts</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are party to a limited number of fixed-price contracts with the U.S. government. Revenues earned from these contracts do not comprise a significant portion of our total revenue.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Government Regulation</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are subject to government regulations within the U.S. and in other countries in which we produce or market our products. The effects of compliance with these regulations are currently not material to our results
          of operations, capital expenditures, or competitive position. However, compliance with changes to existing or new regulations may have a material adverse effect on our future results of operations, capital expenditures, or competitive position.
          We discuss the potential impact of our not adhering to a number of these regulations in Item 1A. &#8220;Risk Factors&#8221;, of this Form 10-K. The following is a list of major subjects of the regulations that pertain to our business:</div>

        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations, such as those under the Foreign Corrupt Practices Act that prohibit providing remuneration to government officials for the purpose of obtaining or securing business in the jurisdictions in which they serve;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require the minimization and proper disposal of the by-products of our manufacturing processes;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to provide a safe working environment for our employees;</div>
              </td>

  </tr>


</table>
        <div>&#160;</div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that restrict our ability to transfer assets between operations not within the same legal jurisdiction;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to provide information through the submission of government surveys;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to maintain an effective system of internal accounting controls;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that prohibit us from engaging in business in specified countries, or with specified customers;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to protect the personal information of our customers and employees;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to accurately determine our liabilities to taxing authorities, and to settle such liabilities within their statutorily prescribed time periods;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to withhold and timely remit taxes on our employees&#8217; compensation to government authorities;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to contribute to government-sponsored social insurance plans;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that require us to contribute to employee severance plans;</div>
              </td>

  </tr>


</table>
        <div> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">9</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations that prohibit us from disseminating material nonpublic information prior to the public announcement of such information;</div>
              </td>

  </tr>


</table>
        <div>&#160;</div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 36pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top;">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>Regulations pertaining to financial reporting, insider transactions, executive compensation, and other areas overseen by the SEC and governing bodies in other countries in which our operations are located.</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="font-weight: bold;">Human Capital</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">As of October 31, 2024, we had approximately 1,878 full-time and part-time employees worldwide. Our business results depend in part on our ability to successfully manage our human capital resources, including
          attracting, identifying, and retaining key talent. Factors that may affect our ability to attract and retain qualified employees include employee morale, our reputation, competition from other employers, and availability of qualified individuals.
          As of October 31, 2024, none of our employees at any of our worldwide facilities was represented by a union. We consider our employee relations to be good. We believe our commitment to our diverse human capital resources is an important component
          of our mission to deliver superior photomasks and customer care. We provide all employees with the opportunity to share their opinions in open dialogues with our human resources department and senior management. We provide all employees a wide
          range of career development opportunities, both formal and informal. Our formal offerings include tuition reimbursement, leadership development experiences and vocational training. The safety of our employees is a paramount value for us.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We provide mandatory safety trainings in our production facilities, which are designed to focus on empowering our employees with the knowledge and tools they need to make safe choices and to minimize risks.
          Supervisors complete safety management courses as well. The health and wellness of our employees are critical to our success.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We provide our employees with access to a variety of innovative, flexible and convenient health and wellness programs. Such programs are designed to support employees&#8217; physical and mental health by providing tools
          and resources to help them improve or maintain their health status and encourage engagement in healthy behaviors. Additionally, we provide robust compensation and benefits. In addition to salaries, these programs, which vary by country/region,
          can include annual bonuses, stock-based compensation awards, a 401(k) plan with employee matching opportunities, healthcare and insurance benefits, health savings and flexible spending accounts, paid time off, family leave, family care resources,
          employee assistance programs, and tuition assistance.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">10</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <a id="RISKFACTORS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 1A.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">RISK FACTORS</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div>&#160;&#160;&#160;&#160;&#160;&#160;&#160;Set forth below are discussions of the risk factors we believe can make an investment in our business speculative or risky.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Concentration Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our dependency on the microelectronics industry, which as a whole is volatile, could create volatility in our demand and have a negative material impact on our business.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We sell substantially all of our photomasks to semiconductor or FPD designers, manufacturers and foundries, or to other high-performance electronics manufacturers. We believe that the demand for photomasks depends
          primarily on design activity rather than sales volume from products using photomask technologies. Consequently, an increase in semiconductor or FPD sales does not necessarily result in a corresponding increase in photomask sales. In addition, the
          reduced use of application-specific ICs, reductions in design complexities, other changes in the technology or methods of manufacturing or designing semiconductors or FPDs, or a slowdown in the introduction of new semiconductor or FPD designs
          could reduce demand for photomasks &#8210; even if the demand for semiconductors and FPDs increases. Historically, the microelectronics industry has been volatile, with sharp periodic downturns and slowdowns. These negative trends have been
          characterized by, among other things, diminished product demand, excess production capacity, and accelerated erosion of selling prices with a concomitant effect on revenue and profitability.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We depend on a limited number of suppliers for equipment and raw materials and, if those suppliers fail to timely deliver their products to us, we may be unable to fulfill orders from our customers, which could
          adversely affect our business and results of operations.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We rely on a limited number of photomask equipment manufacturers to develop, supply, and repair the equipment we use. These equipment manufacturers usually require lead times of twelve months or longer between the
          order date and the delivery of certain photomask imaging and inspection equipment. The failure of our suppliers to develop, deliver or service such equipment on a timely basis due to internal issues, supply chain constraints or government-imposed
          restrictions could have a material adverse effect on our business and results of operations. In addition, the manufacturing equipment necessary to produce advanced photomasks could become prohibitively expensive, which could similarly affect us.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We use high-precision quartz photomask blanks, pellicles, and electronic grade chemicals in our manufacturing processes. There are a limited number of suppliers of these raw materials, and we do not have long-term
          contracts with these suppliers. Any delays or quality problems in connection with significant raw materials, particularly photomask blanks, could cause delays in the shipments of photomasks, which could have a material adverse effect on our
          business and results of operations. The fluctuation of foreign currency exchange rates, with respect to prices of equipment and raw materials used in manufacturing, could also have a material adverse effect on our business and results of
          operations.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We have been dependent on sales to a limited number of large customers; the loss of any of these customers or a significant reduction in orders from these customers could have a material adverse effect on our
          revenues and results of operations.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Historically, we have sold a significant proportion of photomasks to a limited number of IC and FPD manufacturers. During 2024, 2023 and 2022, our two largest customers accounted for an aggregate of 27%, 27% and 25%,
          respectively, of our revenue. Our five largest customers accounted for an aggregate of 50%, 51% and 45% of our revenue in 2024, 2023 and 2022, respectively. The loss of a significant customer, a significant reduction or delay in orders from any
          significant customer (including reductions or delays due to customer departures from recent buying patterns), or an unfavorable change in competitive conditions in the semiconductor or FPD industries could have a material adverse effect on our
          financial performance and business prospects. The consolidation of semiconductor manufacturers, or an economic downturn in the semiconductor industry, may increase the likelihood of losing a significant customer and could also have an adverse
          effect on our financial performance and business prospects.</div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">11</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Financing Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our cash flows from operations and current holdings of cash may not be adequate for our current and long-term needs.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our liquidity, as we operate in a high fixed-cost environment, is highly dependent on our revenue volume and the timing of our capital expenditures, which can vary significantly from period to period. Depending on
          conditions in the semiconductor and FPD markets, our cash flows from operations and current holdings of cash may not be adequate to meet our current and long-term needs for capital expenditures, operations, and debt repayments. Historically, in
          certain years, we have used external financing to fund these needs. Due to conditions in the credit market, some financing instruments used by us in the past may not be available. Therefore, we cannot provide assurance that additional sources of
          financing would be available to us on commercially favorable terms, if at all, should our cash requirements exceed our existing cash, and operating cash flows.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our operations will continue to require substantial capital expenditures, for which we may be unable to provide or obtain funding.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The manufacture of leading-edge photomasks requires us to make substantial investments in additional manufacturing capability. We expect that we will be required to continue to make substantial capital expenditures
          to meet customer requirements and to position us for future growth. Our capital expenditure payments for fiscal 2025 are expected to be approximately $200 million, of which approximately $6.7 million was included in <span style="font-style: italic;">Accounts payable</span> and<span style="font-style: italic;"> Accrued liabilities </span>on our October 31, 2024 consolidated balance sheet. We cannot provide assurance that we will be able to obtain the additional capital required to
          fund our operations or capital expenditures on reasonable terms, if at all, or that any such inability will not have a material adverse effect on our business and results of operations.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Industry and Competitive Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our business depends on managerial and technical personnel, who are in great demand, and our inability to attract and retain qualified employees could adversely affect our business and results of operations.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our success depends, in part, upon key managerial and technical personnel, as well as our ability to continue to attract and retain additional qualified personnel. The loss of certain key personnel (for example, our
          chief executive officer, chief financial officer, and chief technology officer) could have a material adverse effect on our business and results of operations. We cannot offer assurance that we can retain our key managerial and technical
          employees, or that we can attract similar additional employees in the future.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">The photomask industry is dependent on the semiconductor and display industries, which are subject to rapid technological change and fluctuations in capacity needs. Consequently, we might fail to adequately time our
          capabilities to market needs, which could have a material adverse effect on our business and results of operations.</div>

        <div><br/>
        </div>

        <div>
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;&#160;&#160;&#160;&#160;&#160;The photomask industry has been, and we expect it to continue to be, characterized by technological change and evolving industry requirements, which recent
            supply chain regionalization efforts have accelerated. In order to remain competitive, we will be required to continually anticipate, respond to, and scale technologies of increasing complexity in both <span style="font-size: 10pt; font-family: 'Times New Roman';">the </span>traditional and emerging markets that we serve. In particular, we believe that, as semiconductor geometries continue to become smaller and FPDs become larger or otherwise more advanced, we will be
            required to manufacture photomasks of increasingly challenging complexity. Moreover, the demand for photomasks in non-leading-edge nodes may increase beyond our ability to meet our customers&#8217; requirements within adequate response times.
            Additionally, the demand for photomasks has been, and could in the future be, adversely affected by changes in semiconductor and high-performance electronics fabrication methods that affect the type or quantity of photomasks utilized, such as
            changes in semiconductor demand that favor field-programmable gate arrays and other semiconductor designs that replace application-specific ICs, or the use of certain chip-stacking methodologies that lessen the emphasis on conventional
            lithography technology. Furthermore, evidence of the viability and the corresponding market acceptance of alternative methods of transferring IC designs onto semiconductor wafers could reduce or eliminate the need for photomasks in the
            production of semiconductors. As of the end of 2024, one alternative method, direct-write lithography, has not been proven to be a commercially viable alternative to photomasks, as it is considered to be too slow for high-volume semiconductor
            wafer production. However, should direct-write or any other alternative method of transferring IC or FPD designs without the use of photomasks achieve market acceptance, and if we are unable to anticipate, respond to, or utilize these or other
            technological changes, due to resource, technological, or other constraints, our business and results of operations could be materially adversely affected.</div>

        </div>

        <div> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">12</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-align: justify; font-weight: bold;">The risk of loss of our intellectual property, trade secrets, or other sensitive business or customer confidential information or disruption of operations due to cyberattacks or data breaches
          could negatively impact our financial results.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Cyberattacks or data breaches could compromise confidential, business-critical information, cause disruptions in our operations, expose us to potential litigation, or harm our reputation. We have important assets,
          including intellectual property, trade secrets, and other sensitive, business-critical and/or confidential information which may be vulnerable to such incidents. While we have a comprehensive cybersecurity program that is continually reviewed,
          maintained, and upgraded, we cannot assure that we are invulnerable to cyberattacks and data breaches which, if significant, could negatively impact our business and financial results.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">We may be unable to enforce or defend our ownership and use of proprietary technology, and the utilization of unprotected <span style="font-size: 10pt; font-family: 'Times New Roman';">Company</span> developed technology by our competitors could adversely affect our business, results of operations, and financial position.</div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We believe that the success of our business depends more on proprietary technology, information and processes, and know-how than on our patents or trademarks. Much of our proprietary information and technology
          related to manufacturing processes is not patented and may not be patentable. We cannot offer assurance that:</div>

        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>we will be able to adequately protect our technology;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>competitors will not independently develop similar technology;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>international intellectual property laws will adequately protect our intellectual property rights.</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We may become the subject of infringement claims or legal proceedings by third parties with respect to current or future products or processes. Any such claims, with or without merit, or litigation to enforce or
          protect our intellectual property rights that require us to defend against claimed infringements of the rights of others, could result in substantial costs, diversion of resources, and product shipment delays or could force us to enter into
          royalty or license agreements, rather than dispute the merits of these claims. Any of the foregoing could have a material adverse effect on our business, results of operations, and financial position.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We operate in a highly competitive environment, and, should we be unable to meet our customers&#8217; requirements for product quality, timeliness of delivery or technical capabilities, our revenue could be adversely
          affected.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The photomask industry is highly competitive, and most of our customers utilize more than one photomask supplier. Our competitors include Compugraphics International, Ltd., Dai Nippon Printing Co., Ltd (outside of
          Taiwan and China), Hoya Corporation, LG Innotek Co., Ltd., Shenzhen Newway Photomask Making Co., Ltd., Shenzhen Qingyi Photomask, Ltd., SK-Electronics Co. Ltd., Taiwan Mask Corporation, and Toppan Electronics Products Co., Ltd. We also compete
          with semiconductor and FPD manufacturers&#8217; captive photomask manufacturing operations, some of which market their photomask manufacturing services to outside customers. We expect to face continued competition from these and other suppliers in the
          future. Some of our competitors have substantially greater financial, sales, marketing, or other resources than we do. Also, when producing smaller geometry photomasks, some of our competitors may be able to more rapidly develop and produce such
          masks and achieve higher manufacturing yields than we can. We believe that consistency of product quality, timeliness of delivery, competitive pricing, technical capability and service are the principal factors considered by customers when
          selecting their photomask suppliers. Our inability to meet these competitive requirements could have a material adverse effect on our business and results of operations. In the past, competition has led to pressure to reduce prices and the need
          to invest in advanced manufacturing technology, which we believe contributed to the decrease in the number of independent photomask suppliers, several years ago. These pressures may worsen in the future, causing further consolidation.</div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">13</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Investment Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Joint ventures may not operate according to their business plans if our partners fail to fulfill their obligations, which may adversely affect our results of operations and compel us to dedicate additional resources
          to these joint ventures.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The nature of a joint venture requires us to share control in certain areas with unaffiliated third parties and it is always possible that the alignment that brought us and our joint venture partner together may
          change over time, whether due to change in business strategy, change in control, change in market conditions or applicable laws, or other events. Differing views among joint venture participants may result in delayed decisions or failures to
          agree on major issues. If our joint venture partner does not fulfill its obligations or that alignment changes, the affected joint venture may not be able to operate in accordance with its business plan or the parties may seek to exit the joint
          venture under the terms of the joint venture agreement or otherwise. Under such a scenario, among other possible consequences, our results of operations may be adversely affected, we may be compelled to increase the level of our resources devoted
          to the joint venture or our company-wide business plan may need to be adjusted. If such differences caused a joint venture to deviate from its business plan, or put, change of control or other exit or termination provisions are triggered, our
          results of operations could be materially adversely affected.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our operations in China expose us to substantial risks.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">In 2019, we commenced operations at our two manufacturing facilities in China. These investments are subject to substantial risks which may include, but are not
            limited to: the inability to protect our intellectual property rights under Chinese law, which may not offer as high a level of protection as U.S. law; unexpectedly long negotiation periods with Chinese suppliers and customers; quality issues
            related to materials sourced from local vendors; limited access to electricity; unexpectedly high labor costs due to a tight labor supply; and difficulty in repatriating funds and selling or transferring assets. Our investments in China also
            exposed us to a significant additional foreign currency exchange risk, which we had not been subject to in prior years. In addition, as tensions have, from time to time, escalated between the U.S. and China, we believe there is an enhanced risk
            that our substantial investments in China may be subject to unforeseen <span style="font-size: 10pt; font-family: 'Times New Roman';">or additional </span>restrictions, which may include expropriation of <span style="font-size: 10pt; font-family: 'Times New Roman';">our</span> investments by the Chinese government or restrictions imposed on our operations by the U.S. or other countries. These and other risks may result in our not realizing a return on, or losing some, or
            all, of our investments in China, which would have a material adverse effect on our financial condition and financial performance.</div>

        </div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We may incur unforeseen charges related to possible future facility closures, restructurings, or forfeitures.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We cannot provide assurance that there will not be facility closures, restructurings, or forfeitures in the near or long term, nor can we assure that we will not incur significant charges should there be any future
          facility closures, restructurings, or forfeitures.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We may not be able to consummate future acquisitions or joint ventures or integrate acquisitions into our business, which could result in unanticipated expenses and losses.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">As part of our business growth strategy, we have acquired businesses and entered into joint ventures in the past, and we may pursue acquisitions and joint venture opportunities in the future. Our future efforts to
          grow the Company may include expanding into new or related markets or industries. Our ability to implement this component of our growth strategy may be limited by both our ability to identify appropriate acquisition or joint venture candidates
          and our financial resources, including our available cash and borrowing capacity. The expense incurred in consummating acquisitions or entering into joint ventures, the time it takes to integrate an acquisition, or our failure to integrate
          businesses successfully, could result in unanticipated expenses and losses. Furthermore, we may not be able to realize any of the anticipated benefits from acquisitions or joint ventures.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">14</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-indent: 18pt;">The process of integrating acquired operations into our existing operations may result in unforeseen operating difficulties, and may require significant financial resources that would otherwise be available for the
          ongoing development or expansion of existing operations. Some of the risks associated with the integration of acquisitions include: potential disruption of our ongoing business; distraction of management; unforeseen claims and liabilities,
          including unexpected environmental exposures; unforeseen adjustments, taxes, charges and write-offs; problems enforcing the indemnification obligations of sellers of businesses or joint venture partners for claims and liabilities; unexpected
          losses of customers of, or suppliers to, the acquired business; difficulty in conforming the acquired business&#8217; standards, processes, procedures and controls with our operations; variability in financial performance arising from the
          implementation of acquisition accounting; inability to coordinate new product and process development; loss of senior managers and other critical personnel; problems with new labor unions; and challenges arising from the increased scope,
          geographic diversity, and complexity of our operations.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Operations Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our quarterly operating results fluctuate significantly and may continue to do so in the future.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We have experienced fluctuations in our quarterly operating results, and we anticipate that such fluctuations will continue and could intensify in the future. Fluctuations in operating results may result in
          volatility in the prices of our common stock and financial instruments that could be linked to its value. Operating results may fluctuate as a result of many factors, including the size and timing of orders and shipments, the loss of significant
          customers, changes in product mix, the flow of customer design releases, technological change, fluctuations in manufacturing yields, the actions of our competitors, and general economic conditions. We operate in a high fixed-cost environment and,
          should our revenues and asset utilization decrease, our operating margins could be negatively impacted.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our customers generally order photomasks on an as-needed basis; thus, our revenue in any quarter is dependent primarily on orders received during that quarter. Since we operate with little backlog, and the rate of
          new orders may vary significantly from quarter to quarter, our capital expenditures and consequential expense levels are, to some extent, based primarily on sales forecasts and technological advancements in photomask manufacturing equipment.
          Consequently, if anticipated revenues in any quarter do not occur when expected, our capital investments could result in underutilized capacity and disproportionately high expense levels, causing operating results to be adversely affected. Due to
          the foregoing factors, we believe that quarter to quarter comparisons of our operating results cannot be relied upon as indicators of future performance. In addition, in future quarters, our operating results could be below guidance we may
          provide or the expectations of public market analysts and investors, which could have a material adverse effect on the market price of our common stock.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our substantial non-U.S. operations are subject to additional risks.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Revenues<span style="font-weight: bold;">&#160;</span>from our non-U.S. operations<span style="font-weight: bold;">&#160;</span>were approximately 83%, 86% and 85% of our total revenues in 2024, 2023 and 2022, respectively. We
          believe that maintaining significant international operations requires us to have, among other things, a local presence in the geographic markets that we supply. This requires significant investments in financial, managerial, operational, and
          other resources. Since 1996, we have significantly expanded our operations in international markets by acquiring existing businesses in Europe and Asia, and building manufacturing facilities in Taiwan and China. In order to enable us to optimize
          our investments and other resources, we closely monitor the semiconductor and FPD manufacturing markets for indications of geographic movement and, in conjunction with these efforts, continue to assess the locations of our manufacturing
          facilities. These assessments could result in the opening of additional facilities or closing of our current facilities.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Operations outside of the United States are subject to inherent risks, including: fluctuations in currency exchange rates; unstable political and economic conditions in various countries; changes in economic
          alliances; unexpected changes in regulatory requirements including import and export regulations; compliance with a variety of burdensome foreign laws and regulations; compliance with anti-bribery and anti-corruption laws (such as the Foreign
          Corrupt Practices Act); tariffs and other trade barriers; difficulties in staffing and managing international operations; and longer accounts receivable collection cycles. In addition: foreign countries may enact other restrictions on foreign
          trade or investment, including: currency exchange controls; trade sanctions which result in our losing access to customers and suppliers; legislation which renders agreements to be difficult to enforce; impositions on the movement of funds or
          other assets; or we may be subject to adverse tax consequences. These factors may have a material adverse effect on our costs or our ability to generate revenues outside of the United States and, consequently, on our business and results of
          operations.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">15</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div>
          <div style="font-weight: bold;">We could be subject to damages based on claims brought against us by our customers, or lose customers as a result of the failure of our products to meet certain quality specifications.</div>

          <div style="font-weight: bold;"> <br/>
          </div>

        </div>

        <div style="text-indent: 18pt;">Our products provide important performance attributes for our customers&#8217; products. If a product fails to perform in a manner consistent with quality specifications, or has a shorter useful life than warrantied, a
          customer could seek replacement of the product or damages for costs incurred as a result of the product failing to perform, particularly if such products are sold under agreements that contain limited performance and life cycle warranties. Our
          customers often require us to guarantee that our products conform to certain product specifications that they provide. Any failure to comply with such specifications could result in claims or legal action. A successful claim, or series of claims,
          against us could have a material adverse effect on our financial condition and results of operations and could result in a loss of one or more customers.</div>

        <div><br/>
        </div>

        <div><span style="font-weight: bold;">We face risks associated with the use of sophisticated equipment and complex manufacturing processes and technologies. Our inability to effectively utilize such equipment</span>&#160;<span style="font-weight: bold;">and



































            technologies and perform such processes could have a material adverse effect on our business and results of operations.</span></div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our complex manufacturing processes require the use of expensive and technologically sophisticated equipment and materials, and are continually modified in an effort to improve manufacturing yields and product
          quality. Minute impurities, defects, or other difficulties in the manufacturing process can lower manufacturing yields and render products unmarketable. Moreover, the manufacture of leading-edge photomasks is more complex and time consuming than
          manufacturing less advanced photomasks, and their fabrication may result in delays in the manufacture of all levels of photomasks. We have, on occasion, experienced manufacturing difficulties and capacity limitations that have delayed our ability
          to deliver products within the time frames contracted for by our customers. We cannot provide assurance that we will not experience these or other manufacturing difficulties, or be subject to increased costs, which could result in a loss of
          customers or otherwise have a material adverse effect on our business and results of operations.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We have a high level of fixed costs.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Because of the capital-intensive nature of the photomask manufacturing business, we have a high level of fixed costs and a high degree of operating leverage. Accordingly, should our sales volumes decline as a result
          of a decrease in design releases from our customers or for any other reason, we may have excess or underutilized production capacity which could significantly impact our operating margins or result in write-offs from asset impairments.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Regulatory Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Additional taxes could adversely affect our financial results.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our tax filings are subject to audits by tax authorities in the various jurisdictions in which we do business. These audits may result in assessments of additional taxes that are subsequently resolved with the taxing
          authorities or through the courts. Currently, we believe there are no outstanding assessments whose resolution would result in a material adverse financial result. However, we cannot offer assurances that unasserted or potential future
          assessments would not have a material adverse effect on our financial condition or results of operations.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Our products and technology could be subject to U.S. export control laws and<span style="font-size: 10pt; font-family: 'Times New Roman';">/or</span>
            the export control laws of the foreign jurisdictions where we operate.</div>

        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are subject to various laws relating to the export of products we manufacture, and the technology related thereto, and our failure to comply with these laws could subject us to substantial fines, penalties, and
          even injunctions, the imposition of which could have a material adverse effect on the success of our business.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Certain of our products are or could be subject to the Export Administration Regulations (&#8220;EAR&#8221;) if they are&#160;&#160; manufactured in the U.S., or based on U.S. technology, or contain more than a de minimis amount of
          controlled U.S. content. The EAR could prohibit the export of certain products out of the US or could prohibit our foreign sites from manufacturing or delivering photomasks to certain restricted entities. Additionally, the Company has a large,
          global business with sales outside the U.S. representing a majority of the Company&#8217;s total net sales, and the Company believes that it generally benefits from growth in international trade.&#160; However, trade policies and disputes and other
          international conflicts can result in tariffs, sanctions and other measures that restrict international trade, and can materially adversely affect the Company&#8217;s business, particularly if these measures occur in regions where the Company derives a
          significant portion of its revenues.</div>

      </div>

      <div><br/>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">16</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <div>
        <div style="text-indent: 18pt;">Based on the complex relationships between the United States and certain foreign countries including, but not limited to China, there is inherent risk that political, diplomatic and national security influences might
          lead to trade disputes, impacts and/or disruptions to our operations or our ability to sell our photomasks. The United States and other countries have imposed and may continue to impose trade restrictions and have also levied tariffs and taxes on
          certain goods and imposed export restrictions. Increases in tariffs, additional taxes or other trade restrictions and retaliatory measures may increasingly impact customer demand and customer investment in manufacturing equipment, increase our
          manufacturing costs, decrease margins, reduce the competitiveness of our products, or inhibit our ability to sell, export products or purchase necessary equipment and supplies, which could have a material adverse effect on our business, results
          of operations, or financial condition.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We may be unprepared for changes to environmental laws and regulations and may incur liabilities arising from environmental matters.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are subject to numerous environmental laws and regulations that impose various environmental controls on, among other things, the discharge of pollutants into the air and water and the handling, use, storage,
          disposal, and cleanup of solid and hazardous wastes. Changes in these laws and regulations may have a material adverse effect on our financial position and results of operations, and inadequate compliance with their requirements could give rise
          to significant liabilities.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">If we violate environmental, health or safety laws or regulations, in addition to being required to correct such violations, we can be held liable in administrative, civil, or criminal proceedings, and substantial
          fines and other sanctions could be imposed that could disrupt or limit our operations. Liabilities associated with the investigation and cleanup of hazardous substances, as well as personal injury, property damages or natural resource damages
          arising from the release of, or exposure to, such hazardous substances, may be imposed in many situations without regard to violations of laws or regulations or other fault, and may also be imposed jointly and severally (so that a responsible
          party may be held liable for more than its share of the losses involved, or even the entire loss). Such liabilities may also be imposed on many different entities with a relationship to the hazardous substances at issue, including, for example,
          entities that formerly owned or operated the property affected by the hazardous substances and entities that arranged for the disposal of the hazardous substances at the affected property, as well as entities that currently own or operate such
          property. The nature of our business, including historical operations at our current and former facilities, exposes us to risks of liability under these laws and regulations due to the production, storage, use, transportation and sale of
          materials that can cause contamination or personal injury if released into the environment. Additional information may arise in the future concerning the nature or extent of our liability with respect to identified sites and additional sites that
          may be identified, for which we are alleged to be liable.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">General Risk Factors</span></div>

        <div><br/>
        </div>

        <div>
          <div style="color: rgb(0, 0, 0);"><span style="font-weight: bold; font-style: italic;">We could be negatively impacted by Environmental, Social and Governance (ESG), climate change and other sustainability-related matters</span>.</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">In recent years, there has been an increased focus from stakeholders on environmental, social, and governance matters, including greenhouse gas emissions and climate-related risks, sustainability, renewable energy,
            water stewardship, waste management, diversity, equality and inclusion, responsible sourcing and supply chain, human rights, and social responsibility. Evolving stakeholder expectations and our efforts to manage these issues, report on them,
            and accomplish our goals present numerous operational, regulatory, reputational, financial, legal, and other risks, any of which could have a material adverse impact, including on our reputation and stock price, reputational harm, including
            damage to our relationships with customers, suppliers, investors, governments, or other stakeholders, adverse impacts on our ability to manufacture and sell products and maintain our market share, the success of our collaborations with third
            parties, increased risk of litigation, investigations, or regulatory enforcement action, unfavorable environmental, social, and governance ratings or investor sentiment, diversion of resources and increased costs to control, assess, and report
            on environmental, social, and governance metrics.</div>

        </div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">17</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div>
          <div style="font-weight: bold;">Ineffective internal controls could impact our business and operating results.</div>

          <div style="font-weight: bold;"> <br/>
          </div>

        </div>

        <div style="text-indent: 18pt;">Our internal controls over financial reporting may not prevent or detect misstatements because of their inherent limitations in detecting human errors, the circumvention or overriding of controls, or fraud; even
          effective internal controls can provide only reasonable assurance with respect to the preparation and fair presentation of financial statements. If we: fail to maintain the adequacy of our internal controls, including any failure to implement
          required new or improved controls; otherwise fail to prevent financial reporting misstatements; or experience difficulties in implementing internal controls, our business and operating results could be adversely impacted, and we could fail to
          meet our financial reporting obligations.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our business could be adversely impacted by global or regional catastrophic events.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Our business could be materially adversely affected by terrorist acts, widespread outbreaks of infectious diseases<span style="font-size: 10pt; font-family: 'Times New Roman';">,</span> government responses emplaced to limit the impact of infectious diseases (such as shelter-in-place directives), or the outbreak or escalation of wars including, but not limited to, the invasion of Ukraine by the Russian
            Federation. Such events in the geographic regions in which we do business, including escalations of political tensions and military conflicts in the U.S., Europe, the Republic of South Korea, the People&#8217;s Republic of China, or the Republic of
            China (Taiwan), and any governmental sanctions enacted in reaction thereto, could result in a global energy crisis, economic inflation, supply-chain disruptions, or the confiscation or destruction of our facilities; all and any of these
            outcomes could have material, adverse impacts on our results of operations, financial condition, and cash flows.</div>

        </div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our production facilities could be damaged or disrupted by natural or manmade disasters or labor strikes, either of which could adversely affect our financial position, results of operations, and cash flows.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">A major catastrophe, such as an earthquake, flood, fire, or other disaster, labor strike, or work stoppage at any of our manufacturing facilities, or a manufacturing facility of our suppliers or customers, could
          result in a prolonged interruption of our business. A disruption resulting from any one of these events could cause significant delays in shipments of our products and the loss of revenue and customers, which could have a material adverse effect
          on our financial position, results of operations, and cash flows. Our facilities in Taiwan are located in a seismically-active area.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our sales can be impacted by the health and stability of the general economy, which could adversely affect our results of operations and cash flows.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Unfavorable general economic conditions in the U.S. or other countries in which we or our customers conduct business may have the effect of reducing the demand for photomasks. Economic downturns may lead to a
          decrease in demand for end products whose manufacturing processes involve the use of photomasks, which may result in a reduction in new product design and development by semiconductor or FPD manufacturers and adversely affect our results of
          operations and cash flows.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Technology failures or cyber security breaches could have a material adverse effect on our operations.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We rely on information technology systems to process, transmit, store, and protect electronic information. For example, a significant portion of the communications between our personnel, customers, and suppliers
          depends on information technology. Our information technology systems may be vulnerable to a variety of interruptions due to events beyond our control, including, but not limited to, natural disasters, terrorist attacks, telecommunications
          failures, computer viruses, hackers, and other security issues. Although we have technology and information security processes and disaster recovery plans in place to mitigate our risks to these vulnerabilities, these measures may not be adequate
          to ensure that our operations will not be disrupted, should such an event occur.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The General Data Protection Regulation (&#8220;GDPR&#8221;), which went into effect in the European Union (EU) on May 25, 2018, applies to the collection, use, retention, security, processing, and transfer of personally
          identifiable information of residents of E.U. countries. The GDPR created a range of new compliance obligations and imposes significant fines and sanctions for violations. It is possible that the GDPR may be interpreted or applied in a manner
          that is adverse to, or unforeseen by us, including requirements that are inconsistent with our practices, or that we may otherwise fail to construe its requirements in ways that are satisfactory to the E.U. authorities. Upon leaving the E.U. on
          January 31, 2021, the U.K. enacted a new domestic data privacy law called the &#8220;U.K. &#8211; General Data Protection Regulation&#8221; (&#8220;UK-GDPR&#8221;). Although somewhat less restrictive than the GDPR, the UK-GDPR is similar to the GDPR with respect to both an
          entity&#8217;s obligation to protect personal information and the imposition of significant fines for violations.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">18</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-indent: 18pt;">Any failure, or perceived failure, by us to comply with the GDPR or the UK-GDPR, or with any applicable regulatory requirements or orders, including, but not limited to privacy, data protection, information security,
          or consumer protection related privacy laws and regulations, in one or more jurisdictions within the E.U., the U.K. or elsewhere, could: result in proceedings or actions against us by governmental entities or individuals; subject us to
          significant fines, penalties, and/or judgments; require us to change our business practices; limit access to our products and services in certain countries, or otherwise adversely affect our business, as we would be at risk to lose both customers
          and revenue, and incur substantial costs.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">We may, in the future, incur net losses.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Although the Company has been profitable since fiscal 2010, it has, in the past, incurred net losses. We cannot provide assurance that the Company will not incur net losses in the future.</div>

        <div><br/>
        </div>

        <div style="font-style: italic;"><span style="text-decoration: underline;">Market Related Risk Factors</span></div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Changes in foreign currency exchange rates could have a material adverse effect on our results of operations, financial condition, or cash flows.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our consolidated financial statements are prepared in accordance with U.S. GAAP and are reported in U.S. dollars. Our operations have transactions and balances denominated in currencies other than the U.S. dollar;
          primarily the South Korean won, New Taiwan dollar, Japanese yen, Chinese renminbi, Euro, Singapore dollar, and the British pound sterling. In 2024, we recorded a net gain from changes in foreign currency exchange rates of $2.2 million in our
          consolidated statement of income, while our net assets increased by $8.6 million as a result of the translation of foreign currency financial statements to U.S. dollars. Significant foreign currency fluctuations may adversely affect our results
          of operations, financial condition, or cash flows.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Our hedging activity could negatively impact our results of operations and cash flows.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We may enter into derivatives to manage our exposures to interest rate and currency movements. If we do not accurately forecast our results of operations, execute contracts that do not effectively mitigate our
          economic exposures to interest rates and currency rates, elect to not apply hedge accounting (when doing so would have mitigated our losses), or fail to comply with the complex accounting requirements for hedging transactions, our results of
          operations and cash flows could be volatile, as well as negatively impacted.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">The market price of our common stock is subject to volatility and could fluctuate widely in response to various factors, many of which are beyond our control.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Factors that may influence the price of our common stock include, but are not limited to, the following:</div>

        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>loss of any of our key customers or suppliers;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>additions or departures of key personnel;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>third party sales of common stock;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>short interest in our common stock;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>our ability to execute our business plan, including but not limited to, our expansion into China;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>announcements and consummations of business acquisitions;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>operating results that fall below or exceed expectations;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>announcements of forecasted earnings or material transactions;</div>
              </td>

  </tr>


</table>
        <div> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">19</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>issuances or repurchases of our common stock;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>intellectual property disputes;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>reputational damage suffered with or without merit;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>industry developments;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>news about or disclosures made by our competitors or customers;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>business combinations, divestitures, or bankruptcies by customers, suppliers, or competitors;</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>economic and other external factors including (but not limited to) inflation, recessions, natural disasters, military actions, political instability, or social unrest; and</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
              </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                <div>period to period fluctuations in our financial results.</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="text-indent: 18pt;">In addition, securities markets have from time-to-time experienced significant price and volume fluctuations that are unrelated to the operating performance of particular companies. These market fluctuations may also
          materially and adversely affect the market price of our common stock. Such fluctuations may be the result of imbalances between buy and sell offers, the actions of quantitative or algorithmic stock traders and short-sellers, or low trading volume
          which can magnify the effects of a small number of transactions on the price of a stock.</div>

        <div><br/>
        </div>

        <div style="text-align: justify; font-weight: bold;">We operate in a global, competitive environment which gives rise to operating and market risk exposure.</div>

        <div><br/>
        </div>

        <div style="text-align: justify; text-indent: 18pt;">We sell our products in a competitive, global environment, and compete worldwide for sales on the basis of product quality, price, technology, and customer service. Sales of our products are also
          subject to federal, state, local, and foreign taxes, laws and regulations, trade agreements, import and export controls, duties, and tariffs. The imposition of additional regulations or controls including export controls, duties, tariffs, or
          changes to bilateral and regional trade agreements, could negatively impact our results of operations.</div>

        <div><br/>
        </div>

        <a id="UNRESOLVEDSTAFFCOMMENTS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 1B.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">UNRESOLVED STAFF COMMENTS</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="text-indent: 18pt;">None.</div>

        <div><br/>
        </div>

        <a id="CYBERSECURITY"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 1C.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">CYBERSECURITY</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="font-weight: bold;">Risk Management Strategy</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Securing the Company&#8217;s business information, customer, supplier, and employee data and information technology systems is an important part of our overall risk management framework. We rely on certain key information
          technology systems, some of which are dependent on services provided by third parties, including cloud vendors, for various business functions necessary to operate and manage our business. We select key third-party service providers based on
          several factors, including the type of data processed and the nature of services offered, and we oversee such key third-party service providers by conducting vendor diligence upon onboarding and ongoing monitoring, including a review of SOC-1
          reports on an annual basis.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We have adopted processes designed to identify, assess and manage material risks from cybersecurity threats. Those processes include response to and an assessment of internal and external threats to the security,
          confidentiality, integrity and availability of our data and information systems, along with other material risks to our operations. In addition, we have implemented procedures over certain areas such as access on/off boarding and account
          management to help govern the processes put in place by management designed to protect our IT assets, data, and services from threats and vulnerabilities. Although, to date, we have not experienced a material cybersecurity incident resulting in a
          significant interruption of our operations, the scope of any future incident cannot be predicted with any meaningful accuracy. See &#8220;<span style="font-style: italic;">Item 1A. Risk Factors</span>&#8221; for more information.</div>

        <div> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">20</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-weight: bold;">Governance</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Management is responsible for the day-to-day management of the risks we face, while our <span style="font-size: 10pt; font-family: 'Times New Roman';">Board</span>
                of <span style="font-size: 10pt; font-family: 'Times New Roman';">Directors</span> has responsibility for the oversight of risk management, including risks from cybersecurity threats. The cybersecurity program is led by the Company&#8217;s
                Global VP of Data Operations and Information Technology, who provides periodic updates to the Cyber Security Risk Management Committee of our Board of Directors about the program, including information about cyber risk management governance
                and the status of ongoing efforts to strengthen cybersecurity effectiveness. Our Board of Directors engages in ad hoc conversations with management on cybersecurity-related news events and discuss any significant updates to our
                cybersecurity risk management and initiatives. The Cyber Security Risk Management Committee regularly reports on its activities to the full Board to promote effective coordination and to ensure that the entire Board remains apprised of the
                effectiveness of the cybersecurity risk management and the cybersecurity risk landscape, and also assesses how management is managing these risks.</div>

            </div>

          </div>

        </div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">21</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div>
          <a id="PROPERTIES"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 54pt;">
                  <div style="font-weight: bold; text-align: left;">ITEM 2. <br/>
                  </div>
                </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                  <div style="font-weight: bold; text-align: left;">PROPERTIES</div>
                </td>

  </tr>


</table>
        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The following table presents certain information about the Company&#8217;s photomask manufacturing facilities:</div>

        <div><br/>
        </div>

        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 87%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="font-weight: bold;">Location</div>
              </td>

    <td style="width: 2%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 10%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="font-weight: bold;">Type of</div>
                <div style="font-weight: bold;">Interest</div>
              </td>

    <td style="width: 1%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: top;">
                <div><br/>
                </div>
              </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">
                <div><br/>
                </div>
              </td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Allen, Texas</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle;">
                <div>Boise, Idaho</div>
              </td>

    <td style="width: 2%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: middle;">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Brookfield, Connecticut</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle;">
                <div>Bridgend, Wales</div>
              </td>

    <td style="width: 2%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: middle;">
                <div>Leased</div>
              </td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Cheonan, Korea</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle;">
                <div>Hefei, China</div>
              </td>

    <td style="width: 2%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: middle;">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: top;">
                <div>(1)</div>
              </td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Dresden, Germany</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Leased</div>
              </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle;">
                <div>Hsinchu, Taiwan</div>
              </td>

    <td style="width: 2%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: middle;">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: middle;">
                <div>(1)</div>
              </td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Hsinchu, Taiwan</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Leased</div>
              </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle;">
                <div>Taichung, Taiwan</div>
              </td>

    <td style="width: 2%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: middle;">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: middle;">
                <div>(1)</div>
              </td>

  </tr>

  <tr>

    <td style="width: 87%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Xiamen, China</div>
              </td>

    <td style="width: 2%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>Owned</div>
              </td>

    <td style="width: 1%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                <div>(1)</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div>(1)&#160; We own our manufacturing facilities in Hefei, Taichung, Xiamen, and one of our manufacturing facilities in Hsinchu. However, we lease the related land at these sites. We believe our facilities, with planned expansions, are adequate to
          support our current and near-term requirements. </div>

        <div><br/>
        </div>

        <div>
          <a id="LEGALPROCEEDINGS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 54pt;">
                  <div style="font-weight: bold; text-align: left;">ITEM 3.</div>
                </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                  <div style="font-weight: bold; text-align: left;">LEGAL PROCEEDINGS</div>
                </td>

  </tr>


</table>
        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Please refer to Note 16 &#8211; <span style="font-style: italic;">Commitments and Contingencies</span> to our consolidated financial statements in Part II, Item 8 of this report for information on legal proceedings
          involving the Company.</div>

        <div><br/>
        </div>

        <div>
          <a id="MINESAFETYDISCLOSURES"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 54pt;">
                  <div style="font-weight: bold; text-align: left;">ITEM 4.</div>
                </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                  <div style="font-weight: bold; text-align: left;">MINE SAFETY DISCLOSURES</div>
                </td>

  </tr>


</table>
        </div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Not applicable.</div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">22</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-align: center; font-weight: bold;">PART II</div>

        <div><br/>
        </div>

        <div>
          <a id="MARKETFORREGISTRANTSCOMMO"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 54pt;">
                  <div style="font-weight: bold; text-align: left;">ITEM 5.</div>
                </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                  <div style="font-weight: bold; text-align: left;">MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES</div>
                </td>

  </tr>


</table>
        </div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">(a) Market Information</div>

        <div><br/>
        </div>

        <div style="color: rgb(0, 0, 0); text-indent: 18pt;">Our common stock is traded on the NASDAQ Global Select Market (&#8220;NASDAQ&#8221;) under the symbol PLAB. On December 12, 2024, the closing sale price of our common stock, per the NASDAQ Global Select
          Market, was $26.27.</div>

        <div><br/>
        </div>

        <div>(b) <span style="font-weight: bold;">Approximate Number of Holders of Common Stock</span></div>

        <div><br/>
        </div>

        <div>Based on available information, we have 215 registered shareholders.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">(c) Dividends</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">To date, we have not paid any cash dividends on Photronics shares, and, for the foreseeable future, we anticipate that earnings will continue to be retained for use in our business.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">(d) Securities Authorized for Issuance Under Equity Compensation Plans</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The information regarding our equity compensation required to be disclosed by Item 201(d) of Regulation S-K is incorporated by reference from the Photronics, Inc. 2025 Definitive Proxy Statement in Item 12 of Part
          III of this report. The 2025 Definitive Proxy Statement will be filed within 120 days after our fiscal year ended October 31, 2024.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">(e) Stock Price Performance Graph</div>

        <div><br/>
        </div>

        <div style="text-align: center;"> <div><img src="image00003.jpg" alt="graphic"/></div>

          <div><br/>
          </div>

        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">23</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="font-weight: bold;">(f) Purchase of Equity Securities by Registrant and Affiliated Purchasers</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">
          <div style="text-indent: 18pt;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;In September 2020, the Company&#8217;s Board of Directors authorized the repurchase of up to $100 million of its common stock, pursuant to a repurchase plan under
              Rule 10b5-1 of the Securities Act. The repurchase authorization by the Board of Directors has no expiration date, does not obligate us to acquire any common stock, and is subject to market conditions. Share repurchases under this
              authorization commenced on September 16, 2020. The most recent 10b5-1 plan expired on September 15, 2022, and has not been renewed.&#160; In 2022, we repurchased 0.2 million shares at a cost of $2.5 million (an average of $13.43 per share) and,
              since the program&#8217;s inception, we have repurchased 5.8 million shares at a cost of $68.3 million (an average of $11.70 per share). All shares repurchased under the program have been retired. On August 28, 2024, the <span style="font-size: 10pt; font-family: 'Times New Roman';">Board</span> of <span style="font-size: 10pt; font-family: 'Times New Roman';">Directors</span> authorized an increase to the Company&#8217;s existing share repurchase program from the remaining $31.7
              million up to $100 million under the Board of Director authorization. In 2024, we did not repurchase any further shares as part of this program.</div>

          </div>

        </div>

        <div><br/>
        </div>

        <a id="RESERVED"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 6.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">[RESERVED]</div>
              </td>

  </tr>


</table>
        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">24</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <a id="MANAGEMENTSDISCUSSIONANDA"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 7.</td>

    <td style="width: auto; vertical-align: top;">
                <div style="font-weight: bold; text-align: left;">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</div>
              </td>

  </tr>


</table>
        <div style="font-weight: 400;"><br/>
        </div>

        <div style="font-style: italic; text-indent: 18pt;">The following should be read in conjunction with &#8220;Cautionary Statement Regarding Forward Looking Statements&#8221; and our combined consolidated financial statements and notes thereto included in Item 8
          of this Annual Report on Form 10-K.</div>

        <div><br/>
        </div>

        <div style="font-style: italic; text-indent: 18pt;">For a comparison of results of operations for the fiscal years ended October 31, 2023 and 2022, see Part II, Item 7. Management&#8217;s Discussion and Analysis of Financial Condition and Results of
          Operations of Photronics Inc.&#8217;s Annual Report on Form 10-K for the fiscal year ended October 31, 2023, filed with the SEC on December 26, 2023.</div>

        <div><br/>
        </div>

        <div style="font-weight: bold;">Overview</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We sell substantially all of our photomasks to semiconductor designers and manufacturers, and manufacturers of FPDs. Photomask technology is also being applied to the fabrication of other higher-performance
          electronic products such as virtual reality/augmented reality advanced IC packages, photonics, micro-electronic mechanical systems, and certain nanotechnology applications. Our selling cycle is tightly interwoven with the development and release
          of new semiconductor and display designs and applications, particularly as they relate to the semiconductor industry&#8217;s migration to more advanced product innovation, design methodologies, and fabrication processes. The demand for photomasks
          primarily depends on design activity rather than sales volumes from products manufactured using semiconductor manufacturing technologies. Consequently, an increase in semiconductor or display sales does not necessarily result in a corresponding
          increase in photomask sales. However, the reduced use of application-specific ICs, reductions in design complexities, other changes in the technology or methods of manufacturing or designing semiconductors, or a slowdown in the introduction of
          new semiconductor or display designs could reduce demand for photomasks &#8210; even if the demand for semiconductors and FPDs increases. Advances in semiconductor, display, and photomask design and production methods that shift the burden of achieving
          device performance away from lithography could also reduce the demand for photomasks. Historically, the microelectronics industry has been volatile, experiencing periodic downturns and slowdowns in design activity. These negative trends have been
          characterized by, among other things, diminished product demand, excess production capacity, and accelerated erosion of selling prices with a concomitant effect on revenue and profitability.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are typically required to fulfill customer orders within a short period of time, sometimes within twenty-four hours. This results in a minimal level of backlog orders, typically one to two weeks of backlog for IC
          photomasks and two to three weeks of backlog for FPD photomasks. However, the demand for some IC photomasks can extend longer than the traditional time period; thus, for some products, our backlog can expand to as long as two to three months.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The global semiconductor and FPD industries are driven by end markets which have been closely tied to consumer-driven applications of high-performance devices, including, but not limited to, mobile display devices,
          mobile communications, and computing solutions. While we cannot predict the timing of the industry&#8217;s transition to volume production of next-generation technology nodes, or the timing of up and down-cycles with precise accuracy, we believe that
          such transitions and cycles will continue into the future, beneficially and adversely affecting our business, financial condition, and operating results as they occur. We believe our ability to remain successful in these environments is dependent
          upon the achievement of our goals of being a service and technology leader and efficient solutions supplier, which we believe should enable us to continually reinvest in our global infrastructure.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">We are focused on improving our competitiveness by advancing our technology and reducing costs and, in connection therewith, have invested and plan to continue to invest in manufacturing equipment to serve both the
          high-end photomask and trailing-edge markets. As we face challenges that require us to make significant improvements in our competitiveness, we continue to evaluate further cost reduction initiatives.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">State-of-the-art production for semiconductor masks is considered to be 28 nanometer and smaller for ICs and Generation 10.5+ and AMOLED and LTPS display-based process technologies for FPDs. However, 32 nanometer and
          above geometries for semiconductors and Generation 8 and below (excluding AMOLED and LTPS) process technologies for displays constitute the majority of designs currently being fabricated in volume. At these geometries and various high-end nodes,
          we can produce full lines of photomasks, and there is no significant technology employed by our competitors that is not available to us. We expect advanced-generation designs to continue to move to production throughout fiscal 2025, and we
          believe we are well positioned to service an increasing volume of this business as a result of our investments in manufacturing processes and technology in the regions where our customers are located.</div>

        <div style="text-indent: 18pt;"> <br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">25</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div style="text-indent: 18pt;">The photomask industry has been, and is expected to continue to be characterized by technological change and evolving industry standards. In order to remain competitive, we will be required to continually anticipate,
          respond to, and utilize changing technologies. In particular, we believe that, as semiconductor geometries continue to become smaller, and display designs become larger or otherwise more advanced, we will be required to manufacture even more
          complex optically-enhanced reticles, including optical proximity correction, phase-shift and EUV photomasks. Additionally, demand for photomasks has been, and could in the future be, adversely affected by changes in high-performance electronics
          fabrication methods that affect the type or quantity of photomasks used, such as changes in semiconductor demand that favor field-programmable gate arrays and other semiconductor designs that replace application-specific ICs, or the use of
          certain chip-stacking methodologies that lessen the emphasis on conventional lithography technology. Furthermore, increased market acceptance of alternative methods of transferring circuit designs onto semiconductor wafers could reduce or
          eliminate the need for photomasks in the production of semiconductors. As of the end of 2024, one alternative method, direct-write lithography, has not been proven to be a commercially viable alternative to photomasks, as it is considered to be
          too slow for high-volume semiconductor wafer production, and we have not experienced a significant loss of revenue as a result of this or other alternative semiconductor design methodologies. However, should direct-write lithography or any other
          alternative method of transferring IC designs to semiconductor wafers without the use of photomasks achieve market acceptance, and we do not anticipate, respond to, or utilize these or other changing technologies due to resource, technological,
          or other constraints, our business and results of operations could be materially adversely affected.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">Our revenues have benefitted, and our costs, including depreciation, have been affected by the increased demand for high-end-technology photomasks that require more advanced manufacturing capabilities, but generally
          command higher ASPs. Our capital expenditure payments were $130.9 million, $131.3 million and $112.3 million in 2024, 2023 and 2022, respectively. Nonetheless, we intend to continue to make the required investments to support the technological
          requirements of our customers that we believe will continue to enable our growth. In support of this effort, we expect capital expenditure payments to be approximately $200 million in fiscal year 2025.</div>

        <div><br/>
        </div>

        <div style="text-indent: 18pt;">The manufacture of photomasks for use in fabricating ICs, FPDs, and other related products built using comparable photomask-based process technologies has been, and continues to be, capital intensive. Our employees
          and our integrated global manufacturing network represent a significant portion of our fixed operating cost base. Should our revenue decrease as a result of a decrease in design releases from our customers, we may have excess or underutilized
          production capacity, which could significantly impact our operating margins, or result in write-offs from asset impairments.</div>

        <div><br/>
        </div>

        <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">26</span></div>

          <div style="page-break-after: always;" class="BRPFPageBreak">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <div>
          <div style="font-weight: bold;">Results of Operations</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">The following tables present selected operating information expressed as a percentage of revenue. The columns may not foot due to rounding.</div>

          <div><br/>
          </div>

          <div>
            <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 1px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 1px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 1px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="10">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">July 28,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Revenue</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cost of goods sold</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">63.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">64.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">62.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Gross profit</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">37.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">35.6</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">37.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Selling, general and administrative expenses</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">9.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">9.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Research and development expenses</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating income</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">25.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">24.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">28.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Non-operating (expense) income, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">(0.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">4.8</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">8.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income before income tax provision</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">24.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">29.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">36.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax provision</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">6.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">6.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">8.9</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">18.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">22.8</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">27.8</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to noncontrolling interests</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.9</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">6.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">8.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">15.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">16.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">19.6</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div>
            <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="10">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Revenue</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">100.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cost of goods sold</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">63.6</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">62.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">64.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Gross profit</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">36.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">37.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">35.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Selling, general and administrative expenses</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">9.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.8</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.8</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Research and development expenses</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.9</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating income</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">25.6</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">28.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">25.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Non-operating income</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.9</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income before income tax provision</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">28.5</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">30.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">29.0</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax provision</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.9</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">21.2</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">22.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">21.7</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to noncontrolling interests</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">6.1</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">8.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">7.3</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">15.1</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">14.1</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">14.4</div>
                  </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">
                    <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">27</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

            </div>

          </div>

          <div style="text-indent: 18pt;">Note:<span style="font-weight: bold;">&#160;</span>All the following tabular comparisons, unless otherwise indicated, are for the three months ended October 31, 2024 (Q4 FY24), July 28, 2024 (Q3 FY24) and October 31,
            2023 (Q4 FY23), and for the fiscal years ended October 31, 2024 (YTD FY24), October 31, 2023 (YTD FY23), and October 31, 2022 (YTD FY22). Please refer to Part II, Item 7 of our 2023 Form 10-K for comparative discussion of our fiscal years ended
            October 31, 2023, and October 31, 2022. The tables in this item may not foot due to rounding.</div>

          <div><br/>
          </div>

          <div style="font-style: italic; font-weight: bold;">Revenue</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">Our quarterly revenues can be affected by the seasonal purchasing practices of our customers. As a result, demand for our products is typically reduced during the first quarter of our fiscal year by the North
            American, European, and Asian holiday periods, as some of our customers reduce their development and, consequently, their buying activities during those periods.</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">The following tables present changes in revenue disaggregated by product type and geographic origin, in Q4 FY24 and YTD FY24 from revenue in prior reporting periods.</div>

          <div><br/>
          </div>

          <div style="font-style: italic;"><span style="text-decoration: underline;">Quarterly Changes in Revenue by Product Type ($ in millions)</span></div>

          <div style="font-style: italic;"><span style="text-decoration: underline;"> <br/>
            </span></div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                  <div style="text-align: center; font-weight: bold;">Q4 FY24 compared with Q3 FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="6">
                  <div style="text-align: center; font-weight: bold;">Q4 FY24 compared with Q4 FY23</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1"><br/>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Revenue in</div>
                  <div style="text-align: center; font-weight: bold;"> Q4 FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">
                  <div style="text-indent: -7.2pt; margin-left: 16.2pt;"><span style="text-decoration: underline;">IC</span></div>
                </td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">High-end *</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">60.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">21.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">2.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">4.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">Mainstream</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">103.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(3.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 34.2pt;">Total IC</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">163.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">7.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(0.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(0.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 16.2pt;"><span style="text-decoration: underline;">FPD</span></div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">High-end *</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">48.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">-</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">0.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(4.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(9.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">Mainstream</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">3.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">56.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">0.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">8.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 34.2pt;">Total FPD</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">58.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">3.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">6.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(4.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(6.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 4px;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Total Revenue</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">222.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">11.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(4.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>


</table>
          <div> <br/>
          </div>

          <div>* High-end photomasks typically have higher ASPs than mainstream products.</div>

          <div><br/>
          </div>

          <div style="font-style: italic;"><span style="text-decoration: underline;">Quarterly Changes in Revenue by Geographic Origin ($ in millions) **</span></div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                  <div style="text-align: center; font-weight: bold;">Q4 FY24 compared with Q3 FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="6">
                  <div style="text-align: center; font-weight: bold;">Q4 FY24 compared with Q4 FY23</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1"><br/>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Revenue in</div>
                  <div style="text-align: center; font-weight: bold;"> Q4 FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Taiwan</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">69.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">2.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(9.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(12.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">China</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">60.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">2.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Korea</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">40.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">4.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(5.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">United States</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">41.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">2.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">7.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">13.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Europe</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">9.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">0.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">0.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; padding-bottom: 2px;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Other</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">0.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">-</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(1.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(0.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(27.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 40%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Total revenue</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">222.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">11.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">5.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(4.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>


</table>
          <div><br/>
          </div>

          <div>
            <div>** This table disaggregates revenue by the location in which it was earned.</div>

            <div> <br/>
            </div>

          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">28</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

            </div>

          </div>

          <div style="text-indent: 18pt;">Revenue in Q4 FY24 of $222.6 million represented an increase of 5.5% compared with Q3 FY24, and a decrease of 2.1% from Q4 FY23.</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">Overall IC revenue increased $7.8 million or 5.0% in Q4 FY24 from Q3 FY24 due to stronger high-end foundry and logic demand in Asia.&#160; Overall IC revenue decreased $0.8 million or 0.5% in Q4 FY24 from Q4 FY23.&#160; IC
            mainstream decreased in Q4 FY24 by $2.8 million or 2.5% from Q3 FY24, and $3.2 million or 2.9% from Q4 FY23 primarily the result of reduced mainstream demand in Asia.</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">FPD revenue increased $3.8 million or 6.9% in Q4 FY24 from Q3 FY24 due to stronger demand for mainstream products.&#160; FPD revenue decreased $4.1 million or 6.5% in Q4 FY24 from Q4 FY23 due to slower demand in
            high-end products. Revenue from mainstream products increased $3.8 million or 56.6% in Q4 FY24 from Q3 FY24 as more production capacity was dedicated to meet strong demand.</div>

          <div><br/>
          </div>

          <div style="font-style: italic;"><span style="text-decoration: underline;">Year-over-Year Changes in Revenue by Product Type ($ in millions)</span></div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                  <div style="text-align: center; font-weight: bold;">YTD FY24 compared with YTD FY23</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Revenue in</div>
                  <div style="text-align: center; font-weight: bold;">YTD FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">
                  <div style="text-indent: -7.2pt; margin-left: 16.2pt;"><span style="text-decoration: underline;">IC</span></div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">High-end *</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">228.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">33.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">17.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">Mainstream</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">409.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(46.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(10.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 34.2pt;">Total IC</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">638.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(13.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 16.2pt;"><span style="text-decoration: underline;">FPD</span></div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">High-end *</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">195.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(5.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 25.2pt;">Mainstream</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">33.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(6.5</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(16.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 34.2pt;">Total FPD</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">228.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(12.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(5.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Total Revenue</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">866.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(25.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>


</table>
          <div><br/>
          </div>

          <div>* High-end photomasks typically have higher ASPs than mainstream photomasks.</div>

          <div><br/>
          </div>

          <div style="font-style: italic;"><span style="text-decoration: underline;">Year-over-Year Changes in Revenue by Geographic Origin ($ in millions)**</span></div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                  <div style="text-align: center; font-weight: bold;">YTD FY24 compared with YTD FY23</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Revenue in</div>
                  <div style="text-align: center; font-weight: bold;">YTD FY24</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1"><br/>
                </td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Increase</div>
                  <div style="text-align: center; font-weight: bold;">(Decrease)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Taiwan</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">288.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(28.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(9.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">China</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">232.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(12.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(5.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Korea</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">158.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(4.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">United States</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">146.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">17.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">13.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Europe</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">39.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">2.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">7.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Other</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(0.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(14.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">866.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(25.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(2.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>


</table>
          <div><br/>
          </div>

          <div>** This table disaggregates revenue by the location in which it was earned.</div>

          <div> <br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">29</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

            </div>

          </div>

          <div style="text-indent: 18pt;">Overall revenue decreased $25.2 million or 2.8% in YTD FY24 from YTD FY23.&#160; IC revenue decreased $13.2 million or 2.0% in YTD FY24 from YTD FY23 due to less demand for mainstream products earlier in the year which
            was partially offset by strong demand for high-end products. FPD revenue decreased by $12.0 million or 5.0%, driven by a $6.5 million or 16.3% decrease in revenue from mainstream products due to a decrease in G8 products.</div>

          <div><br/>
          </div>

          <div style="font-style: italic; font-weight: bold;">Gross Margin</div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center;">&#160;</div>
                  <div style="font-weight: bold; text-align: center;"> Q4 FY24</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center;">&#160;</div>
                  <div style="font-weight: bold; text-align: center;"> Q3 FY24</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center;">&#160;</div>
                  <div style="font-weight: bold; text-align: center;"> Q4 FY23</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Gross profit</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>82.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>75.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>9.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>84.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>(3.1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 40%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Gross margin</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>37.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>35.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>37.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
          <div><br/>
          </div>

          <div style="text-indent: 18pt;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Gross margin increased by 140 basis points in Q4 FY24 as compared to Q3 FY24, primarily as a result of the increase in revenue.&#160; The gross margin favorable impact
              resulting from the increase in revenue in Q4 FY24 compared to Q3 FY24 was partially offset by increased material costs of 5.2%, or 6 basis points as a percentage of revenue. Labor costs increased 1.3%, or 45 basis points as a percentage of
              revenue. Equipment and other overhead costs increased 2.7% from Q3 FY24 or 77 basis points as a percentage of revenue, mainly due to higher equipment cost in US high-end location.</div>

          </div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Gross margin decreased by 30 basis points in Q4 FY24, from Q4 FY23, primarily as a result of the decrease in revenue of 2.1% and increased equipment and other
              overhead costs of 4.6%, or 185 basis points as a percentage of revenue.&#160; This was partially offset by a decrease in material cost of 5.2%, or 77 basis points as a percentage of revenue, and labor costs of 8.5%, or 74 basis points as a
              percentage of revenue.</div>

          </div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center;">&#160;</div>
                  <div style="font-weight: bold; text-align: center;">YTD FY24</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center;">&#160;</div>
                  <div style="font-weight: bold; text-align: center;">YTD FY23</div>
                </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                  <div style="text-align: center; font-weight: bold;">Percent</div>
                  <div style="text-align: center; font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Gross profit</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>315.9</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>336.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>(6.0</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                  <div>)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                  <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Gross margin</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>36.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>37.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div>%</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
          <div><br/>
          </div>

          <div style="text-indent: 18pt;">Gross margin decreased by 130 basis points in YTD FY24, from YTD FY23, primarily as a result of the decrease in revenue of 2.8% and increased equipment and other overhead costs of 2.5%, or 148 basis points as a
            percentage of revenue.&#160; This was partially offset by a decrease in material cost of 3.8%, or 24 basis points as a percentage of revenue, and labor costs of 2.8%, but remained flat as a percentage of revenue.</div>

          <div> <br/>
          </div>

          <div style="font-style: italic; font-weight: bold;">Selling, General and Administrative Expenses</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">Selling, general and administrative expenses were $21.0 million in Q4 FY24, compared with $19.4 million in Q3 FY24, and $16.7 million in Q4 FY23. The $1.6 million increase from Q3 FY24 was primarily the result of
            compensation and related expenses of $1.1 million. The $4.3 million increase from Q4 FY23 was primarily the result of increased compensation and related compensation expenses of $2.1 million and increased professional fees of $1.4 million.</div>

          <div><br/>
          </div>

          <div style="text-indent: 18pt;">Selling, general and administrative expenses were $77.8 million in YTD FY24, compared with $69.5 million in YTD FY23.&#160; The increase of $8.3 million is primarily due to an increase in compensation and related
            expenses of $3.8 million and professional fees of $2.5 million.</div>

          <div><br/>
          </div>

          <div style="font-style: italic; font-weight: bold;">Research and Development Expenses</div>

          <div><br/>
          </div>

          <div style="text-align: justify; text-indent: 18pt;">Research and development expenses, which primarily consist of development and qualification efforts related to process technologies for high-end IC and FPD applications, increased $1.7 million
            to $5.3 million in Q4 FY24, from Q3 FY24; the increase was primarily caused by increased qualification activities. Research and development expenses in Q4 FY24 increased by $1.9 million from Q4 FY23 as a result of increased development
            activities in the U.S. and Asia. On a year-to-date basis, research and development expenses increased $2.9 million, to $16.6 million, primarily due to increased development activities in the U.S.</div>

          <div style="text-align: justify;"> <br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">30</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

            </div>

          </div>

          <div>
            <div style="font-style: italic; font-weight: bold;">Non-Operating Income (Expense)</div>

            <div style="font-style: italic; font-weight: bold;"> <br/>
            </div>

            <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="font-weight: bold; text-align: center;"> Q4 FY24</div>
                  </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="font-weight: bold; text-align: center;"> Q3 FY24</div>
                  </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="font-weight: bold; text-align: center;"> Q4 FY23</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Foreign currency transactions impact, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>(7.7</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>4.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>13.2</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Interest expense, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div>(0.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div>(0.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                    <div>(0.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Interest income and other income, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>6.8</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>6.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>5.6</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Non-operating (expense) income, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>(1.0</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>10.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>18.7</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
            <div><br/>
            </div>

            <div style="text-indent: 18pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Non-operating (expense) income decreased in Q4 FY24 from Q3 FY24 by $11.1 million <span style="font-size: 10pt; font-family: 'Times New Roman';">and from Q4
                    FY23 </span>by $19.7 million, primarily due to foreign currency impacts. The foreign currency impacts were primarily driven by unfavorable movements of the New Taiwan dollar and the South Korean won, against the U.S. dollar for both
                  periods.</div>

              </div>

            </div>

            <div><br/>
            </div>

            <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="font-weight: bold; text-align: center;">YTD FY24</div>
                  </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
                    <div style="font-weight: bold; text-align: center;">YTD FY23</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Foreign currency transactions impact, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>2.2</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>2.5</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Interest expense, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                    <div>(0.3</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                    <div>(0.4</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>)</div>
                  </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Interest income and other income, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>24.0</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>14.8</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
                    <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Non-operating income, net</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>25.9</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                    <div>16.9</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
            <div><br/>
            </div>

            <div style="text-align: justify; text-indent: 18pt;">Non-operating income (expense) increased $9.0 million in YTD FY24, compared with YTD FY23, due to increased interest income and other income of $9.2 million, resulting from higher average
              cash, cash equivalents and short-term investments balances in FY24 as compared with FY23.</div>

            <div><br/>
            </div>

            <div style="font-style: italic; font-weight: bold;">Income Tax Provision</div>

            <div><br/>
            </div>

            <div style="text-indent: 18pt;">
              <div style="text-align: left; text-indent: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">On December 15, 2022, the European Union (EU) Member States formally adopted the EU&#8217;s Pillar Two Directive, which generally provides for a
                minimum effective tax rate of 15%, as established by the Organization for Economic Co-operation and Development (OECD) Pillar Two Framework. The EU effective dates are January 1, 2024, and January 1, 2025, for different aspects of the
                directive. A significant number of other countries are expected to also implement similar legislation with varying effective dates.&#160; The Company is currently not subject to Pillar <span style="font-size: 10pt; font-family: 'Times New Roman';">Two</span> but is continuously evaluating the potential impact of the Pillar Two Framework to ensure we are compliant in the future.</div>

            </div>

            <div><br/>
            </div>

            <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                    <div style="text-align: center; font-weight: bold;"> Q4 FY24</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                    <div style="text-align: center; font-weight: bold;">Q3 FY24</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                    <div style="text-align: center; font-weight: bold;">Q4 FY23</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);">
                    <div>Income tax provision</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>14.6</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>14.1</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>$</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                    <div>20.3</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
                    <div>Effective income tax rate</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div>26.6</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div>22.7</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>%</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                    <div>24.3</div>
                  </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                    <div>%</div>
                  </td>

  </tr>


</table>
            <div><br/>
            </div>

            <div style="text-indent: 18pt;">The effective income tax rates are sensitive to the jurisdictional mix of our earnings, due, in part, to the non-recognition of tax benefits on losses in jurisdictions with valuation allowances.</div>

            <div><br/>
            </div>

            <div style="text-indent: 18pt;">The effective income tax rate increased in Q4 FY24, compared with Q3 FY24, primarily due to changes in the period-to-period mix of jurisdictional earnings as well as an increase in foreign tax as compared to the
              prior quarter. The effective income tax rate increase in Q4 FY24, as compared with Q4 FY23,&#160;is primarily due to changes in the jurisdictional mix of earnings as well as an increase in foreign tax as compared to the prior year.</div>

            <div><br/>
            </div>

            <div>
              <div>
                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                        <div style="text-align: center; font-weight: bold;"> FY24</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                        <div style="text-align: center; font-weight: bold;">FY23</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Income tax provision</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                        <div>63.6</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                        <div>70.3</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Effective income tax rate</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                        <div>25.7</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>%</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                        <div>26.0</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>%</div>
                      </td>

  </tr>


</table>
              </div>

              <div> <br/>
              </div>

              <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">31</span></div>

                <div style="page-break-after: always;" class="BRPFPageBreak">
                  <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

                <div style="width: 100%;" class="BRPFPageHeader">
                  <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                </div>

              </div>

              <div style="text-indent: 18pt;">The decrease in the effective income tax rate on a full-year basis in FY24, compared with FY23, is primarily due to changes in the jurisdictional mix of earnings.&#160; We consider all available evidence when
                evaluating the potential future realization of deferred tax assets, and when, based on the weight of all available evidence, we determine that it is more likely than not that some portion or all of our deferred tax assets will not be
                realized, we reduce our deferred tax assets by a valuation allowance. We also regularly assess the potential outcomes of ongoing and future tax examinations and, accordingly, have recorded accruals for such contingencies. Included in the
                balance of unrecognized tax benefits as of October 31, 2024 and October 31, 2023, are $14.7 million and $8.9 million respectively, recorded in <span style="font-style: italic;">Other liabilities</span> in the consolidated balance sheets
                that, if recognized, would impact the effective tax rates.&#160; The October 31, 2024 valuation allowance was reduced by $(2.0) million dollars which was offset by additional FIN 48 reserve of $5.8 million.</div>

              <div><br/>
              </div>

              <div style="font-style: italic; font-weight: bold;">Net Income Attributable to Noncontrolling Interests</div>

              <div><br/>
              </div>

              <div style="text-indent: 18pt;">Net income attributable to noncontrolling interests was $6.4 million in Q4 FY24, compared with $13.8 million in Q3 FY24; the decrease was the result of a net decrease in the net incomes of our joint venture
                operations. Net income attributable to noncontrolling interests decreased by $12.1 million in Q4 FY24 from Q4 FY23, and by $21.0 million in YTD FY24 from YTD FY23, as a result of decreased net income at both our Taiwan-based and China-based
                IC facilities.</div>

              <div><br/>
              </div>

              <div style="font-weight: bold;">Liquidity and Capital Resources</div>

              <div> <br/>
              </div>

              <div style="text-indent: 18pt;">Cash and cash equivalents was $598.5 million and $499.3 million as of October 31, 2024, and October 31, 2023, respectively. As of October 31, 2024, total cash and cash equivalents included $562.1 million held
                by foreign subsidiaries. In addition, we currently have $42.2 million in short-term investments and RMB 200 million (approximately $28.1 million) of borrowing capacity in China to support local operations. See Note 8 <span style="font-style: italic;">&#8211; Debt </span>to the consolidated financial statements for additional information on our outstanding debt and currently available financing. Our primary sources of liquidity are our cash on hand and cash we
                generate from operations.</div>

              <div><br/>
              </div>

              <div style="text-indent: 18pt;">We continually evaluate alternatives for efficiently funding our capital expenditures and ongoing operations. These reviews may result in our engagement in a variety of investing and financing transactions, in
                the transfer of cash among subsidiaries, and/or the repatriation of cash to the U.S. The transfer of funds among subsidiaries could be subject to foreign withholding taxes; in certain jurisdictions, repatriation of these funds to the U.S.
                may subject them to U.S. state income taxes and/or local country withholding taxes. We believe that our liquidity, including available financing, is sufficient to meet our requirements through the next twelve months and thereafter for the
                foreseeable future. Through the utilization of our existing liquidity, cash we generate from operations and short-term investments, we plan to continue to invest in our business, with our investments targeted to align with our customers&#8217;
                technology road maps. In addition, we stand ready to invest in mergers, acquisitions, or strategic partnerships, should a suitable opportunity arise.</div>

              <div><br/>
              </div>

              <div style="text-indent: 18pt;">We estimate capital expenditures for our fiscal year 2025 will be approximately $200 million; these investments will be targeted towards high-end and mainstream &#8220;point&#8221; tools that will increase our operating
                capacity and efficiency and enable us to support our customers&#8217; near-term demands. As of October 31, 2024, we had outstanding capital commitments of approximately $105.4 million and accrued liabilities related to capital equipment purchases
                of approximately $6.7 million. Although payment timing could vary, primarily as a result of the timing of tool delivery, installation and testing, we currently estimate that we will fund $98.1 million of our total $112.1 million committed
                and recognized obligations for capital expenditures over the next twelve months. Please refer to Notes 11 <span style="font-style: italic;">- Leases</span> and 16<span style="font-style: italic;"> &#8211; Commitments and Contingencies </span>to
                our consolidated financial statements for additional information on our lease liabilities and unrecognized commitments, respectively.</div>

              <div><br/>
              </div>

              <div style="text-indent: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">On August 28, 2024, the <span style="font-size: 10pt; font-family: 'Times New Roman';">Board</span> of <span style="font-size: 10pt; font-family: 'Times New Roman';">Directors</span> authorized an increase to the Company&#8217;s existing share repurchase program from the remaining $31.7 million up to $100 million. As of October 31, 2024, there was $100 million remaining under that authorization.
                  Depending on market conditions, we may utilize some or the entire remaining approved amount to reacquire additional shares.</div>

              </div>

              <div><br/>
              </div>

              <div style="text-indent: 18pt;">As discussed in Note 6 <span style="font-style: italic;">&#8211; PDMCX Joint Venture </span>of our consolidated financial statements, DNP, the noncontrolling interest in our China-based joint venture has, under
                certain circumstances, the right to put its interest in the joint venture to Photronics, or to purchase our interest in the joint venture. Under all such circumstances, the sale of DNP&#8217;s interest would be at its ownership percentage of the
                joint venture&#8217;s net book value, with closing to take place within three business days of obtaining required approvals and clearance. As of the date of issuance of this report, DNP had not indicated its intention to exercise this right. As
                of October 31, 2024, Photronics and DNP each had net investments in this joint venture of approximately $140.6 million.</div>

              <div> <br/>
              </div>

              <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">32</span></div>

                <div style="page-break-after: always;" class="BRPFPageBreak">
                  <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                <div style="width: 100%;" class="BRPFPageHeader">
                  <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                </div>

              </div>

              <div>
                <div>
                  <div style="font-style: italic; font-weight: bold;">Cash Flows</div>

                  <div><br/>
                  </div>

                </div>

                <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="10">
                        <div style="text-align: center; font-weight: bold;">Year Ended</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                        <div style="text-align: center; font-weight: bold;">October 31,</div>
                        <div style="text-align: center; font-weight: bold;">2024</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                        <div style="text-align: center; font-weight: bold;">October 31,</div>
                        <div style="text-align: center; font-weight: bold;">2023</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">
                        <div style="text-align: center; font-weight: bold;">October 31,</div>
                        <div style="text-align: center; font-weight: bold;">2022</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Net cash provided by operating activities</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>261.4</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>302.2</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>275.2</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Net cash used in investing activities</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>(156.5</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>(101.5</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                        <div>(147.8</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Net cash used in financing activities</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>(7.7</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>(18.5</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                        <div>(38.7</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

  </tr>


</table>
                <div>
                  <div><span style="font-weight: bold; font-style: italic;"> </span><br/>
                  </div>

                  <div style="text-indent: 18pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Operating Activities</span></span>: <span style="font-style: italic;">Net cash provided by operating activities</span> reflects net income adjusted for certain non-cash
                    items, including depreciation and amortization, share-based compensation, and the effects of changes in operating assets and liabilities. Net cash provided by operating activities decreased by $40.8<span style="font-weight: bold;">&#160;</span>million



































                    in FY24, compared with FY23, primarily due to decreased net income and net cash-favorable changes in working capital, predominantly in Asia.</div>

                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Investing Activities</span></span>:&#160; Net cash flows used in investing activities increased by $55.0 million in FY24, compared to FY23, primarily driven by an increase of
                    purchases of short-term investments of $80.4 million.&#160; This was partially offset by an increase in proceeds from the maturity of short-term investments of $25.3 million.</div>

                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Financing Activities</span></span>: Net cash used in financing activities decreased by $10.8 million in FY24, compared to FY23.&#160; This was driven by a decrease in repayments
                    of debt of $11.8 million</div>

                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">Our cash, cash equivalents, and restricted cash balances were positively impacted by changes in foreign currency exchange rates in FY24 of $2.1<span style="font-weight: bold;">&#160;</span>million.</div>

                  <div><br/>
                  </div>

                  <div style="font-style: italic; font-weight: bold;">Non-GAAP Financial Measures</div>

                  <div><br/>
                  </div>

                </div>

                <div style="text-indent: 18pt;">Non-GAAP Net Income attributable to Photronics, Inc. shareholders and non-GAAP diluted earnings per share are &#8220;non-GAAP financial measures&#8221; as such term is defined by Regulation G of the Securities and
                  Exchange Commission, and may differ from similarly named non-GAAP financial measures used by other companies. The financial tables below reconcile Photronics, Inc. financial results under GAAP to non-GAAP financial information. We believe
                  these non-GAAP financial measures that exclude certain items are useful for analysts and investors to evaluate our on-going performance because they enable a more meaningful comparison of historical results of our core business. These
                  non-GAAP metrics are not a measure of consolidated operating results under U.S. GAAP and should not be considered as an alternative to Net income (loss), Net income (loss) per share, or any other measure of consolidated results under U.S.
                  GAAP. The items excluded from these non-GAAP metrics, but included in the calculation of their closest GAAP equivalent, are significant components of the condensed consolidated statement of income and must be considered in performing a
                  comprehensive assessment of overall financial performance.</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">The following table reconciles <span style="font-style: italic;">GAAP to Non-GAAP Income</span>&#160;for the indicated periods. The columns may not foot due to rounding.</div>

                <div> <br/>
                </div>

                <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                  <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">33</span></div>

                  <div style="page-break-after: always;" class="BRPFPageBreak">
                    <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                  <div style="width: 100%;" class="BRPFPageHeader">
                    <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                  </div>

                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="10">
                        <div style="text-align: center; font-weight: bold;">Three Months ended</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="10" rowspan="1">
                        <div style="text-align: center; font-weight: bold;">Year ended</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="2" colspan="1">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;"> Oct 31,</div>
                        <div style="text-align: center; font-weight: bold;"> 2024</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;">July 28,</div>
                        <div style="text-align: center; font-weight: bold;">2024</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;">Oct 31,</div>
                        <div style="text-align: center; font-weight: bold;">2023</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;">Oct 31,</div>
                        <div style="text-align: center; font-weight: bold;">2024</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;">Oct 31,</div>
                        <div style="text-align: center; font-weight: bold;">2023</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2" rowspan="2">
                        <div style="text-align: center; font-weight: bold;">Oct 31,</div>
                        <div style="text-align: center; font-weight: bold;">2022</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1" rowspan="2">&#160;&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt; font-style: italic; font-weight: bold;">Reconciliation of GAAP to Non-GAAP Net Income:</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">GAAP Net Income&#160;attributable to Photronics, Inc. shareholders</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>33,869</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>34,388</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>44,611</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>130,688</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>125,485</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>118,786</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 16.2pt;">FX loss (gain) </div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>7,758</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>(4,068</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>(13,234</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>(2,168</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>(2,466</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                        <div>(27,344</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Estimated tax effects of above</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>(1,936</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>914</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>3,437</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>477</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>317</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>5,933</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px; white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Estimated noncontrolling interest effects of above</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(2,637</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>681</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>2,431</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(1,407</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>2,676</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>4,275</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Non-GAAP Net Income attributable to Photronics, Inc. shareholders</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>37,054</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>31,915</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>37,245</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>127,590</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>126,012</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>101,650</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt; font-weight: bold;">Weighted-average number of common shares</div>
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt; font-weight: bold;">outstanding - Diluted</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>62,456</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>62,414</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>62,067</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>62,391</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>61,755</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>61,189</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt; font-style: italic; font-weight: bold;">Reconciliation of GAAP to Non-GAAP EPS:</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">GAAP diluted earnings per share</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.54</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.55</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.72</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>2.09</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>2.03</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>1.94</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px; white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Effects of the above adjustments</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>0.05</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(0.04</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(0.12</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(0.04</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>0.01</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                        <div>(0.28</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                        <div>)</div>
                      </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">
                        <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Non-GAAP diluted earnings per share</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.59</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.51</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>0.60</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>2.05</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>2.04</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>$</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
                        <div>1.66</div>
                      </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
                <div><br/>
                </div>

                <div style="font-weight: bold;">Business Outlook</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">Our current business outlook and guidance was provided in our Full Year and Fourth Quarter Fiscal 2024 Results earnings call, and related slide deck. These can be accessed in the investor section of our
                  website - www.photronics.com.</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">Our future results of operations and the other forward-looking statements contained in this filing and in our &#8220;Full Year and Fourth Quarter Fiscal 2024 Results&#8221; earnings call and presentation involve a number
                  of risks and uncertainties, some of which are discussed in Part I, Item 1A of this report. A number of other unforeseeable factors could cause actual results to differ materially from our expectations.</div>

                <div><br/>
                </div>

                <div style="font-weight: bold;">Critical Accounting Estimates</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">Our consolidated financial statements are based on the selection and application of accounting policies, which require management to make significant estimates and assumptions. We believe the following to be
                  the more critical areas that require judgment when applying our accounting policies:</div>

                <div><br/>
                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
                      </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                        <div><span style="text-decoration: underline;">Revenue Recognition</span>: The application of GAAP related to the measurement and recognition of revenue requires us to make judgments and estimates, including the determination of whether we should recognize revenue as we
                          perform or upon the completion of our performance, as these determinations impact the timing and amount of our reported revenue and net income. Other significant judgments include the estimation of the point in the manufacturing
                          process at which we are entitled to recognize revenue, as well as the measurement of our progress towards satisfying our performance obligations, which determine the amount of revenue we are entitled to recognize.</div>
                      </td>

  </tr>


</table>
                <div><br/>
                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
                      </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                        <div><span style="text-decoration: underline;">Property, Plant and Equipment</span>: Significant judgment and assumptions are employed when we establish the estimated useful lives of asset classes, and determine when depreciation should commence for individual assets, as
                          these determinations can significantly impact our gross margin and research and development expenses. Significant judgment would also be employed when events or changes in circumstances indicate that the carrying amount of a group
                          of assets may not be recoverable, as the recoverability assessment requires us to forecast future cash flows related to these assets; this evaluation can significantly impact our gross margin and operating expense.</div>
                      </td>

  </tr>


</table>
                <div><br/>
                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
                      </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                        <div><span style="text-decoration: underline;">Leases</span>: Significant judgment is applied in the determination of whether an arrangement is, or contains, a lease and, in certain instances, whether the lease should be classified as an operating lease or a finance lease,
                          which can impact the timing and classification of lease costs.</div>
                      </td>

  </tr>


</table>
                <div>&#160;</div>

                <div>
                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
                        </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                          <div><span style="text-decoration: underline;">Contingencies</span>: We are subject to the possibility of losses from various contingencies. Significant judgment is necessary to estimate the probability and amount of a loss, if any, from such contingencies. An accrual is
                            made when it is probable that a liability has been incurred or an asset has been impaired and the amount of loss can be reasonably estimated. Changes in estimates related to, and resolutions of, contingencies may have a material
                            impact on our financial performance.</div>
                        </td>

  </tr>


</table>
                  <div> <br/>
                  </div>

                </div>

                <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                  <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">34</span></div>

                  <div style="page-break-after: always;" class="BRPFPageBreak">
                    <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                  <div style="width: 100%;" class="BRPFPageHeader">
                    <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                  </div>

                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br/>
                      </td>

    <td style="width: 18pt; vertical-align: top; color: rgb(0, 0, 0);">&#8226;</td>

    <td style="width: auto; vertical-align: top;">
                        <div style="color: rgb(0, 0, 0);"><span style="text-decoration: underline;">Income Taxes</span>:&#160; Our annual tax rate is determined based on our income and the jurisdictions where it is earned, statutory tax rates, and the tax impacts of items treated differently for tax
                          purposes than for financial reporting purposes. Also inherent in determining our annual tax rate are judgments and assumptions regarding the recoverability of certain deferred tax assets, and our ability to uphold certain tax
                          positions. We are subject to complex tax laws, in the U.S. and numerous foreign jurisdictions, and the manner in which they apply can be open to interpretation. Realization of deferred tax assets is dependent upon generating
                          sufficient taxable income in the appropriate jurisdiction in future periods, which involves business plans, planning opportunities, and expectations about future outcomes. Our assessment relies on estimates and assumptions and may
                          involve a series of complex judgments about future events.</div>
                      </td>

  </tr>


</table>
                <div><br/>
                </div>

                <div style="margin-left: 36pt; color: rgb(0, 0, 0);">There are a number of estimates and assumptions inherent in calculating the various components of our tax provision. Future events such as changes in tax legislation, geographic mix of
                  earnings, findings in tax audits, and earnings repatriation plans could have an impact on those estimates and our effective tax rate.</div>

                <div><br/>
                </div>

                <div style="font-weight: bold;">Effect of Recent Accounting Pronouncements</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">See Note 1 to our consolidated financial statements of this report for recent accounting pronouncements that may affect our financial reporting.</div>

                <div style="text-indent: 18pt;"> <br/>
                </div>

                <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                  <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">35</span></div>

                  <div style="page-break-after: always;" class="BRPFPageBreak">
                    <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                  <div style="width: 100%;" class="BRPFPageHeader">
                    <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                  </div>

                </div>

                <a id="QUANTITATIVEANDQUALITATIV"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="vertical-align: top; font-weight: bold; width: 54pt;">ITEM 7A.</td>

    <td style="width: auto; vertical-align: top;">
                        <div style="font-weight: bold; text-align: left;">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</div>
                      </td>

  </tr>


</table>
                <div><br/>
                </div>

                <div style="font-weight: bold;">Foreign Currency Exchange Rate Risk</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">We conduct business in several major currencies throughout our worldwide operations, and our financial performance may be affected by fluctuations in the exchange rates of these currencies. Changes in
                  exchange rates can positively or negatively affect our reported revenue, operating income, assets, liabilities, and equity. The functional currencies of our Asian subsidiaries are the South Korean won, the New Taiwan dollar, the RMB, and
                  the Singapore dollar. The functional currencies of our European subsidiaries are the British pound and the euro. In addition, we engage in transactions and have exposures to the Japanese yen.</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">We attempt to minimize our risk of foreign currency transaction losses by producing products in the same country in which the products are sold (thereby generating revenues and incurring expenses in the same
                  currency), and by managing our working capital. However, in some instances, we sell products in a currency other than the functional currency of the entity where it was produced, or purchase products in a currency that differs from the
                  functional currency of the purchasing entity. We may also enter into derivative contracts to mitigate our exposure to foreign currency fluctuations when we have a significant purchase obligation or significant receivable denominated in a
                  currency that differs from the functional currency of the transacting subsidiary. We do not enter into derivatives for speculative purposes. There can be no assurance that this approach will protect us from the need to recognize
                  significant foreign currency transaction gains and losses, especially in the event of a significant adverse movement in the value of any foreign currency in which we conduct business against any of our functional currencies, including the
                  U.S. dollar.</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">Our primary net foreign currency exposures as of October 31, 2024, included the South Korean won, the Japanese yen, the New Taiwan dollar, the Chinese renminbi, the Singapore dollar, the British pound
                  sterling, and the euro. As of October 31, 2024, a 10% adverse movement in the value of the non-functional currencies against the functional currencies of our subsidiaries would have resulted in a net unrealized pre-tax loss of $61.3
                  million, which represents an increase of $9.3 million from the same movement as of October 31, 2023. The increase in foreign currency rate change risk is primarily the result of increased net exposures of the New Taiwan dollar and South
                  Korean won against the U.S. dollar. We do not believe that a 10% change in the exchange rates of other non-U.S. dollar currencies would have had a material effect on our October 31, 2024, consolidated financial statements.</div>

                <div><br/>
                </div>

                <div style="font-weight: bold;">Interest Rate Risk</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">A 10% adverse movement in the interest rates on our variable rate borrowings would not have had a material effect on our October 31, 2024, consolidated financial statements.</div>

                <div><br/>
                </div>

                <div style="font-weight: bold;">Inflation Risk</div>

                <div><br/>
                </div>

                <div style="text-indent: 18pt;">Inflationary factors generally affect us by increasing our labor and overhead costs, as well as costs associated with certain risks identified above, which may adversely affect our results of operations and
                  financial position. We have historically been able to recover the impacts of inflation through sales price increases, however we cannot reasonably estimate our ability to successfully recover any impact of inflation through price
                  increases in the future. Our inability to do so could harm our results of operations and financial position.</div>

                <div style="text-indent: 18pt;"> <br/>
                </div>

                <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                  <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">36</span></div>

                  <div style="page-break-after: always;" class="BRPFPageBreak">
                    <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                  <div style="width: 100%;" class="BRPFPageHeader">
                    <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                  </div>

                </div>

              </div>

            </div>

          </div>

        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div style="font-weight: bold;">ITEM 8.&#160;
      <!--Anchor-->FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA<a id="FINANCIALSTATEMENTSANDSUP"><!--Anchor--></a></div>

    <div><br/>
    </div>

    <a id="CONSOLIDATEDFINANCIALSTAT"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="vertical-align: middle;" colspan="2">
            <div style="text-align: center; font-weight: bold;">INDEX TO CONSOLIDATED FINANCIAL STATEMENTS</div>
          </td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 10%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="text-align: center; font-weight: bold;">Page</div>
          </td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 10%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#REPORTOFINDEPENDENTREGIST">Report of Independent Registered Public Accounting Firm Deloitte &amp; Touche LLP <span style="background-color: rgb(204, 238, 255); font-weight: normal; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">(PCAOB ID <span style="-sec-ix-hidden:Fact_b11f4b2dbd9f4661a347df8580ddbb6b">34</span>)</span></a></div>
          </td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">38<br/>
          </td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <!--Anchor-->
            <div style="color: rgb(0, 0, 0);"><a href="#BalanceSheets"><span style="background-color: rgb(204, 238, 255); font-weight: normal; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Consolidated





























                  Balance Sheets</span><br/>
              </a> </div>
          </td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">39</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#ConsolidatedStatementsofI">Consolidated Statements of Income</a></div>
          </td>

    <td style="width: 10%; vertical-align: bottom; background-color: rgb(204, 238, 255); text-align: right;">40</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#ComprehensiveIncomeLoss">Consolidated Statements of Comprehensive Income (Loss)<br/>
              </a> </div>
          </td>

    <td style="width: 10%; vertical-align: bottom; background-color: rgb(204, 238, 255); text-align: right;">41</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#StatementsofEquity">Consolidated Statements of Equity</a></div>
          </td>

    <td style="width: 10%; vertical-align: bottom; background-color: rgb(204, 238, 255); text-align: right;">42</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#CashFlows">Consolidated Statements of Cash Flows</a></div>
          </td>

    <td style="width: 10%; vertical-align: bottom; background-color: rgb(204, 238, 255); text-align: right;">43</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

    <td style="width: 10%; vertical-align: top; color: rgb(0, 0, 0);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 90%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0);"><a href="#FinancialStatements">Notes to Consolidated Financial Statements</a></div>
          </td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: right;">44</td>

  </tr>


</table>
    <div> <br/>
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">37</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <!--PROfilePageNumberReset%Num%38%%%--> </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><a id="REPORTOFINDEPENDENTREGIST"><!--Anchor--></a>REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <br/>
      </div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
        <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt; font-weight: normal;">To the shareholders and the Board of Directors of Photronics, Inc.</div>

        <div><br/>
        </div>

        <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">Opinion on the Financial Statements</div>

      </div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">We have audited the accompanying consolidated balance sheets of Photronics, Inc., and subsidiaries (the &#8220;Company&#8221;) as of October 31, 2024 and 2023, the
        related consolidated statements of income, comprehensive income, equity, and cash flows for each of the three years in the period ended October 31, 2024, and the related notes (collectively referred to as the &#8220;financial statements&#8221;). In our
        opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of October 31, 2024 and October 31, 2023, and the results of its operations and its cash flows for each of the three years in the
        period ended October 31, 2024, in conformity with accounting principles generally accepted in the United States of America.</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company&#8217;s internal
        control over financial reporting as of October 31, 2024, based on criteria established in Internal Control &#8212; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission, and our report dated December
        18, 2024, expressed an unqualified opinion on the Company&#8217;s internal control over financial reporting.</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Basis for Opinion</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">These financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial
        statements based on our audits. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of
        the Securities and Exchange Commission and the PCAOB.</div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable
        assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to
        error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the
        accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Critical Audit Matter</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">The critical audit matter communicated below is a matter arising from the current-period audit of the financial statements that was communicated or
        required to be communicated to the audit committee and that (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of
        critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the
        accounts or disclosures to which it relates.</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Revenue &#8212; Contracts with Customers&#8212; Refer to Note 1 &amp; 10 of the financial statements</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Critical Audit Matter Description</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">The Company recognizes revenue over time for in-process production orders that have not shipped for contracts with customers for which it has an
        enforceable right to bill and collect consideration, including a reasonable profit, in the event the in-process orders are cancelled by the customers. In addition, as photomasks are manufactured to customer specifications, they have no alternative
        use to the Company. This results in the Company recording a corresponding contract asset as of period-end for these contracts. Significant judgment is exercised by the Company in determining the amount of revenue to recognize for these contracts
        and the corresponding contract asset, specifically in estimating the point within the production cycle at which the production orders stand in relation to the Company&#8217;s enforceable right within the contract. Pursuant to these contracts, revenue
        recognized over time and the associated contract asset as of October 31, 2024 was $11.5 million.</div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">We identified the determination of revenue recognized over time for in-process productions orders as of October 31, 2024 as a critical auditing matter
        because of the significant estimates and assumptions management makes in determining the amount of revenue to recognize for these contracts. This required a high degree of audit judgment and an increased extent of effort when performing audit
        procedures to evaluate the reasonableness of management&#8217;s determination of the progress point of in-process orders and the amount of revenue recognized over time and the corresponding contract asset as of October 31, 2024.</div>

      <div><br/>
      </div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">How the Critical Audit Matter Was Addressed in the Audit</div>

      <div style="text-align: left;"><a id="z_Hlk13514344"></a><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">Our audit procedures related to the Company&#8217;s determination of the progress point of in-process orders and resulting revenue recognized over time and
        corresponding contract asset as of October 31, 2024 included the following:</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -9pt; margin-left: 45pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- We tested the operating effectiveness of controls over management&#8217;s determination of the point in the production
        process and correlation to stated contractual rights.</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -9pt; margin-left: 45pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- We tested the mathematical accuracy of management&#8217;s calculations of revenue and the associated timing of revenue
        recognized in the consolidated financial statements.</div>

      <div><br/>
      </div>

      <div style="text-align: left; margin-left: 36pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- We tested the accuracy and completeness of the in-process orders report by performing physical observation.</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -9pt; margin-left: 45pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- We selected a sample of in-process production orders as of October 31, 2024 and performed the following&#160;&#160;
        procedures for each selection:</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -4.5pt; margin-left: 76.5pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- Obtained and read the customer agreement/purchase order, invoice, and quote to determine whether the company
        has an enforceable right to bill and collect consideration.</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -4.5pt; margin-left: 76.5pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- Evaluated management&#8217;s identification of significant contract terms and resulting revenue recognition for the
        in-process production order.</div>

      <div><br/>
      </div>

      <div style="text-align: left; text-indent: -4.5pt; margin-left: 76.5pt; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">- Evaluated management estimate of the production point for the in-process order corresponding revenue&#160;&#160;
        recognition and contract asset based on the Company&#8217;s enforceable right within the contract.</div>

      <div><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">/s/ <ix:nonNumeric name="dei:AuditorName" id="Fact_81bd0d717499411da24cdca4325eed7a" contextRef="c20231101to20241031">Deloitte &amp; Touche LLP</ix:nonNumeric></div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:AuditorLocation" id="Fact_ef3cc282da2f43b4bc1f92eeb5dcfc79" contextRef="c20231101to20241031">Boston, Massachusetts</ix:nonNumeric><br/>
      </div>

      <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">December 18, 2024</div>

      <div><br/>
      </div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">We have served as the Company&#8217;s auditor since 1991.</div>

      <div><br/></div>

    </div>

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; color: #000000; font-weight: normal; font-style: normal;">38</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <!--PROfilePageNumberReset%Num%39%%%--> </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PHOTRONICS, INC.</div>

    <!--Anchor-->
    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor-->Consolidated
      <!--Anchor-->Balance Sheets<a id="BalanceSheets"><!--Anchor--></a></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands, except per share amounts)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">October 31</span>,</div>
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">October 31</span>,</div>
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">ASSETS</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current assets:</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash and cash equivalents</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_caf938a356534391ac6f06e777ff47a5" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">598,485</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_43bc50e58b034e97ae61748bced869e9" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">499,292</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;" rowspan="1">
            <div style="margin-left: 9pt;">Short-term investments</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ShortTermInvestments" id="Fact_6587d520b70e4704b8a06f06ebf606bd" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ShortTermInvestments" id="Fact_3440441187a5465ba8a9d1d072a91f01" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,915</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accounts receivable, net of allowance of $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_12e677f08bfd4e6cba91585478e978be" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,126</ix:nonFraction></span> in <span style="text-indent: 0pt;">2024</span> and $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_cb7e07f438364f6589db84a94b5e312f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,099</ix:nonFraction></span> in <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_0caa5b46336242dd9e89bb8abc19d378" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">200,830</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_440de40de98443c9bbac9a425436be2a" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">194,927</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventories</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_7741c7a3f632457186771636a7eb2d31" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,527</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_9257f44b183e430fb5c409a473405e10" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">49,963</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -8.95pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other current assets</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_0079529a8f724c51b712347dbc013216" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,036</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_54d0668b8c66439fb8e22f792d6eb411" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">28,353</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total current assets</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_df2c96fb87234ef9afe5866089b9edca" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">931,062</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_f5194037611e46de9d5dc11e2d09b6a3" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">785,450</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant and equipment, net</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_ba023ade71844c3da1c1d28fb7654aaf" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">745,257</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_ea01a36573c940c09c22fbc713ca2a42" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">709,244</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">Deferred income taxes <br/>
          </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_50352bb623c240618f5040f80c359a82" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,059</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_4fa0f954367240438c989277111696d8" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,297</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other assets</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_3789095c6b1041069dfd726dda77c3a4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,681</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_ac0014d0f7ee4e258f4cbf67d6feefc3" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,230</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total assets</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_e601860d64ca4d769063e84b2415eb31" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,712,059</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_57f3fb2094a840ff9493a7dac6d0cdb0" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,526,221</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">LIABILITIES AND EQUITY</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current liabilities:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -8.95pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current portion of long-term debt</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" id="Fact_48b73a9a0df34b4a9e3ea2a290bd9863" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,972</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" id="Fact_8119593fad6c4d00a1e6e7657ad25078" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,621</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accounts payable</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" id="Fact_a889de5ffd334a7cac25fafc212b493e" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">78,717</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" id="Fact_b81e1b0a0fe74ac3b5e0b6c246d0c63c" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">84,024</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_d701850e99ab4435a7c103218552716c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">87,122</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_bec5e8ca1ceb40bb8a46d7f6b5139bca" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">94,578</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total current liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_1709be7ac11147a883fc0731a85cbaa6" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">183,811</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_0ca24ae92ee04e6fb022132aa1610fcc" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">185,223</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligations" id="Fact_d2790122ab8f476a8e41f931ae9db863" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">25</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligations" id="Fact_4d5066f7556a4171a19ea06b58e7f91d" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,998</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_b0b26f06876e46da8d309dc3ecb838b5" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">47,464</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_edbcf436972242f89328af32f244058e" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">47,391</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9.05pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_1d9120a6f6e2476b992dcd2d6fc67704" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">231,300</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_744eddcc59b741b3bff07173231d8348" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">250,612</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Commitments and contingencies (Note 16)<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1"><span style="-sec-ix-hidden:Fact_f520198fe14d406c9ff80d8f033d2a8d"> </span></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1"><span style="-sec-ix-hidden:Fact_19b61436ec7944569f11fd83664f4796"> </span></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Equity:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;">Preferred stock, $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" id="Fact_dac6ab0d75f942fcaf6e29a831a665b1" contextRef="c20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" id="Fact_a00eeb62feed454aa75d40c37b1e97a0" contextRef="c20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span> par value, <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" id="Fact_f3668d8dccba4b2d9a0d1d0316cfb0a1" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" id="Fact_d344d3021f7140cb9c64fafddb5b9f76" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,000</ix:nonFraction></ix:nonFraction></span> shares authorized, <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" id="Fact_b8c9e19c83e9491997238dfe6a339997" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" id="Fact_b4ef9dcbce2e40139ce8fcc15df8175a" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" id="Fact_9e8a8d6162bc42a384b69fc744881f64" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" id="Fact_01b2d6729ea148a58242c5b966b8130f" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt-sec:numwordsen">none</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span> issued and outstanding</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PreferredStockValue" id="Fact_97e5322e4c2b415fa71215b0cf037ad3" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PreferredStockValue" id="Fact_5ee372d4e27a4ccbb5f405749ff04937" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;">Common stock, $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_9e3d582908374614a9617d7f11648077" contextRef="c20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_6385df83d20046e38f305eabf06327df" contextRef="c20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span> par value, <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_d8adf285057246e58d731e70aedbcda6" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_2af10617d0bc43c7b028cd27ad5ba704" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">150,000</ix:nonFraction></ix:nonFraction></span> shares authorized, <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_ab0e8012b0c14d7cb8b2c2252ddc05e4" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_a8bf8945f87e4a379675084128c4ef0d" contextRef="c20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,949</ix:nonFraction></ix:nonFraction></span> shares issued and outstanding at <span style="text-indent: 0pt;">October 31, 2024</span>,
              and <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_5cd0db2e978344b0bc12b6024cecd142" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_202fc9e77344491bb03124d81fe31909" contextRef="c20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,310</ix:nonFraction></ix:nonFraction></span> shares issued and outstanding at <span style="text-indent: 0pt;">October 31, 2023</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_3d989d5a1a2e4d968eef4e1c494f2225" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">619</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_d034d264f332451b8894c40802cc33fc" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">613</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Additional paid-in capital</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" id="Fact_ee96e38f762c42999364cb2c882a42bd" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">514,757</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" id="Fact_8de9f84167bb4559a6f9bcb5071bc0df" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">502,010</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Retained earnings</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_596f695c2ecb4661bcb1969c9d7dd503" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">691,807</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_f9f30dc34d2247bb813386d932eb61b8" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">561,119</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accumulated other comprehensive loss<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_0fad279701e7498889c4a3a08de0fec4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">86,319</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_8b6a473b31a14685bda500fe23f7b072" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,734</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total Photronics, Inc. shareholders&#8217; equity</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_2b63059a1dbc4db58baf005fe50a3a56" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,120,864</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f9398f7095fb4b17ab6ac7572cdf7c8d" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">975,008</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncontrolling interests</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:MinorityInterest" id="Fact_446981a36afb406caa853155b0105cb3" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">359,895</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:MinorityInterest" id="Fact_1a109a3860e94ef4b2701232537b45b3" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">300,601</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9.05pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total equity</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_3c6e2aaffb404b30a5464fd951a9df74" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,480,759</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_11ea6a0f36c04419b86adecc3f6fa071" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,275,609</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities and equity</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_dd11f4ab8d1840babb6c49039a8f50db" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,712,059</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_a23a904495c04ac1ab8a899b45d99442" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,526,221</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
    <div><br/>
    </div>

    <div>See accompanying notes to consolidated financial statements. </div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">39</span></div>

      <div class="BRPFPageBreak" style="page-break-after:always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PHOTRONICS, INC.</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor-->Consolidated
      <!--Anchor-->Statements of
      <!--Anchor-->Income<a id="ConsolidatedStatementsofI"><!--Anchor--></a></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands, except per share amounts)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="10">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Year Ended</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">October 31</span>,</div>
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">October 31</span>,</div>
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">October 31</span>,</div>
            <div style="text-align: center; text-indent: -7pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; <span style="text-indent: 0pt;">2022</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Revenue</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_cb12e31f4bdf4e369026172ace85201c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">866,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_af34e5997f56432da996e7def1f32b51" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">892,076</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_4e0a350c3bb84c1bbcb2afb53b5ff408" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">824,549</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cost of goods sold</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" id="Fact_5db2d75b98c04603951fa0084a666dad" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">551,000</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" id="Fact_1768589efd474c828b75f98052f1a86f" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">555,914</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" id="Fact_ee2bd966d0f14ec9904c2df6ac6009ff" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">530,336</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Gross profit</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_9209f401ea7040218a71a56ce044a4a3" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">315,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_d09f7317e590463d843d0260e732c3c9" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">336,162</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_d5f810f13f454f478657bdd81a161851" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">294,213</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Operating expenses:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Selling, general and administrative</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" id="Fact_680758328cab499e9c50c33ccae4d4ac" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">77,760</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" id="Fact_0017a4920b3849f482ef91e75dba1a86" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">69,458</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" id="Fact_2d53bab7ec30440db76e0a88a72fdaea" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,989</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Research and development</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_a715f19a65294580bae15643dc250009" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,576</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_e676bd2f5de24c169de9c02edab40a1e" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,654</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_63786f8d6e1c4b029fc659c585c54ebf" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,341</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total operating expenses</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_09d1a53314e44043ac58cf564633420a" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">94,336</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_9f8dbb76b51b414dbe52cff57cc298e0" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">83,112</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_28a5f2bf02544d88af913071594179fd" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">82,330</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other operating expense<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" id="Fact_3f76f4ec5cf94f74a44a630899a829cb" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">92</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" id="Fact_71eaa580dfdb47e5964bbf69e2281c1b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" id="Fact_9bdcd7c8720f4955b9bff9598d998679" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">17</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Operating income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_6e651d3530af4a8da45ecd41e5b88904" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">221,518</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_1bba49257eb149eab9e8f31958a866f4" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">253,050</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_2faeb31b0a1b4c098e76b3e4d10a191d" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">211,866</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-operating income (expense):</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign currency transactions impacts, net</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" id="Fact_ab62b0c71e894372b0f56cfed78a048e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,168</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" id="Fact_dd85439c981b47e5ba85351e51c0b540" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,466</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" id="Fact_09bb85f89ac142feb7e48de228705ed8" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">27,344</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest income and other income, net </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_f3861c22ebee49eeb23033ce786e7a57" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,063</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_67b31cbd702f4b36b3dc2fba62724eea" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,863</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_1a288beb7f0f4658bb8e24d2af2fcbf5" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,680</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; font-family: 'Times New Roman'; font-size: 10pt;">Interest expense, net of subsidies</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:InterestExpenseNetOfSubsidies" id="Fact_cbb87a69f4714092b725fdf3f4cf8d86" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">334</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:InterestExpenseNetOfSubsidies" id="Fact_90c53c8167ad45bab39149dc3734d986" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">433</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:InterestExpenseNetOfSubsidies" id="Fact_f6eeb6ca8f2c45bcaa584dadbbdf5e52" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,857</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income before income tax provision</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_d9cc906690c4454ab843222dc8bfcd62" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">247,415</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_8c9b25d63d0749f08f47f172cceb5d53" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">269,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_6e862819f76040ffa67ac86935e46ab9" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">239,033</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income tax provision</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_6e3a6f7341934ab79ed49dbf460f3247" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,567</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_82195cce013d47519751c51bbf030044" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,312</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_afc56a86ddaf420596964ce1aefd1917" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,791</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_681f46146c784b43b52f73cbdb42fb50" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">183,848</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_eed46943b65c4f37aca380abc3fb2061" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">199,634</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_98ae5686f5a645dc8039f586e7bce11f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">179,242</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to noncontrolling interests</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" id="Fact_2f6ba001bfda4018b71f297999808edb" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">53,160</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" id="Fact_289685ece6b9488db88736a505348a4c" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,149</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" id="Fact_0c15d0bcc79f4e09bfdc6bcce857e0a0" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_c210e0364f7a4413889706ec2806c780" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">130,688</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_1a57033f5db34ef7af330f0dcfa8717b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">125,485</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_ffafeaad4e014c5ba774d3a55af5c3b8" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">118,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Earnings per share:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_86f529a711c44bcaaa51dd1ae3acec4b" contextRef="c20231101to20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.12</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_1b85a79c20bb4a1e9a72b764fb8014c7" contextRef="c20221101to20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.05</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_6b5bd19f1d1f49518fcc6b31daac31af" contextRef="c20211101to20221031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.96</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_46832a39f77f47429106acdfbb2fd78e" contextRef="c20231101to20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.09</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_de596cffc2664f2aab20d8ef781db932" contextRef="c20221101to20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.03</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_09c1d46764e643ffaf2fac4088ed6c37" contextRef="c20211101to20221031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.94</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average number of common shares outstanding:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_24c47fe883c0483bbec5e60bd91b9783" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,726</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_0206fbfcde114877beba93b725423a46" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,139</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_93b2befc47ff4de49844b1e8e5461a5a" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,559</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_7e04b15c21a94c13bf611fd45d8d8675" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">62,391</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_ca8d77bccef947fd8b85b7ab757b896b" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,755</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_e1a62b35819049e087db59317784e096" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,189</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">See accompanying notes to consolidated financial statements.</div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">40</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PHOTRONICS, INC.</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor-->Consolidated Statements of
      <!--Anchor-->
      <!--Anchor-->Comprehensive Income (Loss)<a id="ComprehensiveIncomeLoss"><!--Anchor--></a> </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="10">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_581b2ac135aa489aa61d6f390d33ed4c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">183,848</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_e39d4a76e1074e4ab7f18c6f70fd6c7d" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">199,634</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_9ae9af96bbc940c78ae57d5656a37677" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">179,242</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss), net of tax&#160; of $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossTax" id="Fact_a85693c5092949d0bd6b7f22d6b09f63" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossTax" id="Fact_1c53071c2f074f1fa57d08c71b11fc9b" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossTax" id="Fact_00a5e36ed2ab404bbd80dbd93ccabf66" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">0</ix:nonFraction></ix:nonFraction></ix:nonFraction></span>:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign currency translation adjustments</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_1880e9a76de04e4ebfdd64605dc5c4fc" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,630</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_3597f771622d47e4be2b112fb7682fa8" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,615</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_8fa3a238813d424586fb12ecd07e3798" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">151,209</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" id="Fact_15ebf5794be04471834e7db7dfcc04cf" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">81</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" id="Fact_2a59a09f005a4b96a95dadbe2c258a96" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" id="Fact_dcf633c373a246889d8b5da422105370" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">423</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Net other comprehensive income (loss)<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_fcef1ce76b16479c8ea0f58265297cea" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,549</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_d339b9cef50a4c25bded30c760c75c8d" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,612</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_d15a8ae94c0f414dad2ff56e4226c13b" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">150,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Comprehensive income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" id="Fact_3a7a727d40da44989506d09f141ba1e8" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">192,397</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" id="Fact_d5ff1872f58047d782d901aca8707841" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">205,246</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" id="Fact_953b93cc81d140f9895ed6d6fb0580f7" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">28,456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Less: comprehensive income attributable to noncontrolling interests</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" id="Fact_f5021fd246d84769adb1dea3e0924dae" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,293</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" id="Fact_28133db2f8b149fc9354278dcd5379f2" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,039</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" id="Fact_a22b8b53dbfd4e858da47faf7bdf5575" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">28,697</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Comprehensive income (loss) attributable to Photronics, Inc. shareholders</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_b578cf0a0c88488da3bdfe17742ce77f" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">133,104</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_b3d28407ae0345d8a46fb9c394b396d2" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">135,207</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_6de19dc486554f7e8404bb31369d6d63" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">241</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">See accompanying notes to consolidated financial statements.</div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">41</span></div>

      <div class="BRPFPageBreak" style="page-break-after:always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PHOTRONICS, INC.</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor-->Consolidated
      <!--Anchor-->Statements of
      <!--Anchor-->Equity<a id="StatementsofEquity"><!--Anchor--></a></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Years Ended October 31, 2024, 2023 and 2022</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="22">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics, Inc. Shareholders</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="6">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Common Stock</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Additional</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Paid-In</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Retained </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Treasury</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Accumulated</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Other</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Comprehensive</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Non-</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Controlling</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Shares</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Capital</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Earnings</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Stock</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Income (loss)<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interests</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Equity</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Balance as of October 31, 2021</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SharesOutstanding" id="Fact_68ac883d270040638968121b6f58288d" contextRef="c20211031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,024</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_b69234e0f78e4059871337699862c5eb" contextRef="c20211031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">600</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_18a706f83897453fba74c864315197c0" contextRef="c20211031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">484,672</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_95c45c55f284404b894b2af32fef9fd6" contextRef="c20211031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">317,849</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_e5bb67d61c8a43948a5f1860ac88bf99" contextRef="c20211031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_29aa0fcf4d5141f5bff97b6ac1d562ae" contextRef="c20211031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,571</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_9e651e180e5b4c35a814007cbd216f24" contextRef="c20211031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">176,870</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_0bc51912161147748e15cd45705ac4f3" contextRef="c20211031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,000,562</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_a40bb9358c1d42139a485ac183b4e06c" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_39f22e8359c04c38ba90e49ae9dee96a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_f77d5f9bb4e64788b8eb19e69d90c84f" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">118,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_7fed5a17213d46afa523f2ded35c187e" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_d6fa6044fa63496a90e1bcaf0e46f757" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_4cd815eb703841d78799f00267279721" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_e7bffff58c5549b29bbf628634ebf033" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">179,242</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive loss<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_0c1979969d61469a8ac77aa2c5bd83af" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_90dff2bf12954d44a583e487cf3e7247" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_db926c127781476faf57cf71f2e36767" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_07b704485c294bd492ad13e023dcc62e" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_327a9ea26ec9461b9bd36f92209e68b9" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">119,027</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_d8483ff5a4044db1918ac558017365c3" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">31,759</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_b21293a9e73945d799e962760892ff99" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">150,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Shares issued under equity plans<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" id="Fact_5f3fa08bba8843a188955252176f61c0" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">954</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_1de153b853c24603aedf21431026a07a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_2ae4c4a1c217491d8970c605518af99a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,280</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_719074a16c4e4c91b0d357a0d392d052" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_710ec6187666466b83db105957c38d07" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_d08df930006e49c099f7bfa3e0fb54b0" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_46c6ac5ce80a46feaa9a88ad471de3e4" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_1f7b4c3b996f49698ce528576367843b" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,290</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_e0d5216f2ef540ee8a3e1a7162901318" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_c723c1e72f1b457fa574105c641f0f26" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,308</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_8fd0c8962db849b8b9bf1ba8b471b375" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_429cb2b42d4644d593ab7c703a464b2f" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_a4feade770854d989cea8f99c066f096" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_4997197172834a49b469c9fbed86665d" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_5751f9f70e784f279ed598ceeb4d7e99" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,308</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Contribution from noncontrolling interest</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_2c5fc1be95764fa788290dad94c43c5a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_ade381aa1c334a2e8355657cda463db6" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_f2780438bf534fcda1654e415e833a7d" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_746b6c42978348bb89b6231b425cb582" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_18cc3485154a4816a9c4d15c07142d9d" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_0b1259bfcdb6494e8426c4c00167e325" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,995</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" id="Fact_de46921755c841f9b2b956464d76d311" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,995</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Purchases of treasury stock</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockSharesAcquired" id="Fact_bf2e8eda532548c5a6bcc58f2e5e7dde" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_75a1fb6440ce4ce6ba590589d415bef5" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_accb9f20388d47d4aa7c5eb39162af92" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_a1277f54d45b484084b08cb1ad3991d1" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_d49cc42c053b41ab93eb91627217f690" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_12d024dabf034eb78abad294e50956b6" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_fd2098ce871648e5a6267c1f3e0bacc4" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_6a0ac09bb2f740e89a0396fbe55a667a" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Retirement of treasury stock</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_c22e8e9e353642f5aa5b87ff376e094c" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">187</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_9d4a871e81244751939e436e7ac16ad3" contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_f18d7f9bfb854dceb91686c1272c2d3e" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,519</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_02c1ed81e58343cfa240970b431ad53a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,001</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_1c9a6678c4ba44a6b29325d18e574069" contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_de25f23c4c3e4863811b06401ca9d60a" contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_17805aa301774a959e0cd5bdde6c7a2b" contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockRetiredCostMethodAmount" id="Fact_26776ae865da42b88831a5f3257c41bc" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Balance as of <span style="text-indent: 0pt;">October 31, 2022</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SharesOutstanding" id="Fact_5f3ab6334cec4f27a493292c422690f5" contextRef="c20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,791</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_e63a2cb509b542cca2a582126255ef19" contextRef="c20221031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">608</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_2f03498fdea94ff388caf59af0b53a3f" contextRef="c20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">493,741</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_3c65645e8c984dc38c90e19b7814fc51" contextRef="c20221031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">435,634</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_5014a2175b364ec89be107f7cc1d3294" contextRef="c20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_8d9878e3bc424c01ac82748b774ec57c" contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">98,456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_c2f9521e9b2c4ed19d6b092cfaf34f1a" contextRef="c20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">230,562</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_353bd3df050d44f6ab2a59fc4eddaf62" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,062,089</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_62c5be3a65b546fcadd5d51f3874f787" contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_04807ae3c05e4199a5be3e74fe6d268e" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_c64857a4f8e249dca039ba9ea04080f4" contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">125,485</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_e171cf8249a74b9a991222bec95cf689" contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_8bf6097bae864e2b92495dc1db2bd921" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_1666abeec7e6493a8716b58f18c16412" contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,149</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_afc8d8d803b74d628d90705e128e8a4b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">199,634</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Other comprehensive income (loss)<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_ff2dfaf59fbf43dba4e4ebee6cb22146" contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_37846bb602ca4a1399bf5f92f89bf111" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_7b43ba7e7983489fab6a5276e2e2cf23" contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_9a2c1efb87bd4683977fdd05307a8c98" contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_94027d631be14420bff40d7b337ca615" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,722</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_c9d6ddab881f4fedb172986d896ba1a3" contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4,110</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_52635cd0def14de08f98931675afaa52" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,612</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Shares issued under equity plans<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" id="Fact_3e237ebb3be54eb1b6e1c77df6b6aba9" contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">519</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_2911d22a709147e0ad0d6141b71818a8" contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_5081f1b2f51c4057bbbbb4aa960ace69" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">268</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_cf57d794a66748be8863272ecdb238e0" contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_519b126097644b529cb7cf8fab13bc16" contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_6bb63454b1044f8aaf0946c623a89f36" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_a939491d2c6743d3ac05aa4018980971" contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_6c00ca64c6ae4dfbb5b031f7bffc8c11" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">273</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_cb567f491b294d10b99278ece23c57bd" contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_878e2857021448b2baac69a9474aaca7" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,001</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_db05d47a90294efcbb50c3871d545ffe" contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_f59510bd2a3043cd92ba74de16f44504" contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_a0c3a1edded344bca9729020e0d56e8e" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_1dec1cea8a8c4896a081a6f1e12b0df1" contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_e475514ec22145d7a0a39abd1cfd4242" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,001</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Balance as of <span style="text-indent: 0pt;">October 31, 2023</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SharesOutstanding" id="Fact_64c85811aaef43f6b2ed953390284af9" contextRef="c20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,310</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_2627260edeb54ab497b2dfecee807fcc" contextRef="c20231031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">613</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_c50c7fb92b584c78837a8706b15a34dc" contextRef="c20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">502,010</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_cdb5d108365d43acbae6604f2d81c86a" contextRef="c20231031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">561,119</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_c104b7c24fea4b0fb34fb7844920e8e5" contextRef="c20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_9e4635a7b61a4cdd8f796df05b107292" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,734</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_cda2519c363349c08a6c0ba44209a6fd" contextRef="c20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">300,601</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_55c3cfc12fbb406dac1bcf199648c63f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,275,609</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" rowspan="1">Net income</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_daa1caac491a4ba58b9d96dc59b3c6ce" contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_73f4b2d15c424d23a609e3b41d9d9fcb" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_d3cd1f25bce7494096ae28f3940aa116" contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">130,688</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_411da299164040fc9ec3b81b81fac25f" contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_e5b8748d7cca40559f8e864398fc2106" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_01d261ba37e14fc890e7f4514c50bbb5" contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">53,160</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_b969efa62ad146d5810616fd9192713d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">183,848</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;" rowspan="1">
            <div style="margin-left: 9pt; text-indent: -9pt;">Other comprehensive income<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_d9c9aa3dbb4f4b90b76c1496ae523aa6" contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_76095ecdf7cc49afab8f267318cfb248" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_c5670a0916b849fb94ec39c02f797e74" contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_3bea852777a24dccae89f5099f04a9a6" contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_266b36c74737452ca1bbe61f9049cdcc" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,415</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_b878a0ca841f4e119cd778d5fad9d1d7" contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,134</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" id="Fact_60ff94c8da2a42649401b402282e3d3c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,549</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" rowspan="1">
            <div style="margin-left: 9pt; text-indent: -9pt;">Shares issued under equity plans</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" id="Fact_40da2574f78f47cab0ece3f136b2c9a8" contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">639</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_864ea316ddde4ab3850fac746beaf5de" contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_1e947bac1602443a92fc48a3883cfbe8" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,143</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_5d081d6e673040f0bb1d9abe0a30f1d3" contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_4aeac1f9cd544e60831aab66219c81cc" contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_26c62e748096410ea8593916455da711" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_b4d0723df9754d61b2e9bceaf7b74301" contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" id="Fact_94f5ad2e6bec4aca9035f0b2b8020ae2" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,137</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%;" rowspan="1">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_8f0015c184e44c6784d6710ff043910f" contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_d642108dec844736bc90e48b5438e2e1" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,890</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_ec3b060bd9154c8ca01c48299dfcc4ad" contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_76626cbab0c5473e9d100bdbbc409562" contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_6ba69fdaf622424c803a3b6eb1c97128" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_45a19705c09f4c309c4f3967c4ead64a" contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_bc96f10f89bb4d6db1c8b36225dd8a89" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,890</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 4px;" rowspan="1">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Balance as of <span style="text-indent: 0pt;">October 31, 2024</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:SharesOutstanding" id="Fact_462c994cb5aa4d7c8a000e071227bf5b" contextRef="c20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,949</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_7514cb5b86e94288a30d1196382a3cfc" contextRef="c20241031_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">619</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_cb0615daf3064260badf2541c53358e1" contextRef="c20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">514,757</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_81141e04161e470687d9119c53f6f587" contextRef="c20241031_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">691,807</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_5a9be4082ec6413e882845061feebd2a" contextRef="c20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_618932e296be46abbe69b339b0ce7169" contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">86,319</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">)</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_dbd1581bd84c4a08a08d8068e3eaa7f0" contextRef="c20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">359,895</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: #000000 double 4px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" id="Fact_9a6dfaa3e00a4bb6bdabc9da8f8dde8b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,480,759</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>


</table>
    <div><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">See accompanying notes to consolidated financial statements.</div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">42</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PHOTRONICS, INC.</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor-->Cons<!--Anchor-->olidated Statements of
      <!--Anchor-->Cash Flows<a id="CashFlows"><!--Anchor--></a><!--Anchor--></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>

    <div><br/>
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash flows from operating activities:</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_a816a6b22c7f4998948b63f89834e81c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">183,848</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_345f97f45a69426ba3de258d94c906ef" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">199,634</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProfitLoss" id="Fact_fb903ee0ef4546f5868aa1d54ae8b065" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">179,242</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Adjustments to reconcile net income to net cash provided by operating activities:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Depreciation and amortization of property, plant and equipment</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" id="Fact_fc0bfeba421a431d92bf6e339a1f59f2" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">82,433</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" id="Fact_41150b92b5b247a690ecbe95f6f8d219" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">80,473</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" id="Fact_b76cc70b455b4a5b8bf1d0c714144d51" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">79,971</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Amortization of intangible assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" id="Fact_43f4a137e9b54f898c5e2ac04d577942" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">372</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" id="Fact_570195aac5994f9d97a67f4fa3aff95e" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">362</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" id="Fact_d01e76a882a549bd8319cda56a01320a" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">359</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_764b32b038114317804943f724543c67" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,890</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_774ae58bf35f466182a5d1fb7db4d23b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,001</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_3781f2978a6d455d82806e00e7a09848" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,308</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Deferred income taxes</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_40550bc0388b4042aeafdd8ffa435f05" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,389</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_0eacd95f02e8438aa02058ca3b4be299" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">927</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_dd457dc9bc08438cb9be30a0d3837db7" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">809</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Changes in assets, liabilities, and other:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accounts receivable</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_0baf7139cbf445abb2a5f7a157a125d6" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,541</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_40477a1231674c6ea63d44037463dbbd" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4,026</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_6e16fc3dcada4c3791f63f7257758d93" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,233</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventories</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_12b534b9656347c7b1aa168ce1e33445" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,154</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_6d639b1f9fdd4be6a24aeb1472f868aa" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,236</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_dbfcb7a7e3f54574917e59ef023209fb" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,039</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other current assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherCurrentAssets" id="Fact_23c7db95d8d94fd5b6d86f7d60a2b6d8" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">628</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherCurrentAssets" id="Fact_b6ec06dfa20b41e484a8595f6ae5cef2" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,665</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherCurrentAssets" id="Fact_a42fea78e7034f5488503d57ad1c3a51" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,204</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 27pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accounts payable, accrued liabilities and other</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" id="Fact_3b4b680350d54a3bbfa1b040f7a5cdf5" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,643</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" id="Fact_e9b4411a19d4479f94da22c8df76c860" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">294</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" id="Fact_e32736096d50424fa0b125593c5114f1" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,566</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net cash provided by operating activities</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_94613dac16d84082a65b260ed677818d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">261,444</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_02185dd1ae254510890d75cf73833dfb" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">302,176</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_54712eeab363463e857243f660e017f4" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">275,187</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash flows used in investing activities:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Purchases of property, plant and equipment</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_510faa8aa42341318a485bc47feee750" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">130,942</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_809f0d80d70a414d9dfd1b684d72c724" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">131,295</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_7e470ea2c4a641b9999638aef2df1a8c" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">112,338</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; text-align: left; width: 64%; background-color: #CCEEFF;">&#160;&#160;&#160; Purchases of short-term investments<br/>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireShortTermInvestments" id="Fact_da262305f7b4414fb0149645d55bbf14" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">100,558</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireShortTermInvestments" id="Fact_c961124804ff40dc87d5edc840b3263a" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,192</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireShortTermInvestments" id="Fact_43fedc31ed37470d8f383e173e591089" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,854</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; text-align: left; width: 64%;">&#160;&#160;&#160; Proceeds from maturities of short-term investments</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" id="Fact_a28c8c0266784b7e8792eac2c61fdb17" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">72,836</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" id="Fact_1594ea8602ef4b8b85c173e582ff6921" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">47,537</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" id="Fact_2026d346cd3d448887096868074378d1" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Government incentives</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:ProceedsFromGovernmentIncentives" id="Fact_e3ca9bb98fac4dc7a7fd5a3271f96c54" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,229</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:ProceedsFromGovernmentIncentives" id="Fact_78062d6567cf419e9a88ee1f460dd65b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:ProceedsFromGovernmentIncentives" id="Fact_7e957ab410c64ea6ba65d328c805f022" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,615</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Purchases of intangible assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireIntangibleAssets" id="Fact_3ffdbd57412f484ea5aabcf2f86f435d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">89</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireIntangibleAssets" id="Fact_a73bd4c1694f48e2a7b8024ae165e19f" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">117</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireIntangibleAssets" id="Fact_6f07da7863344db5a8d235ae1ea08fec" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">205</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" id="Fact_e5a478e1de2a40cbae4574f2b6ae96fd" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">59</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" id="Fact_641efaad8aa74fda9eb4f84075f7a137" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" id="Fact_1946b92db5fd4c33bf6aebff6576e8c5" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">25</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net cash used in investing activities</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_13427176562c451a91574c3e5886e596" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">156,465</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_c76922c4719d4090a0ca135b3c059298" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">101,545</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_929a0f399cb24c95b1510bf4e9c48182" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">147,757</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash flows used in financing activities:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Repayments of debt</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations" id="Fact_f38236d42e5f4fa2947bc4c548a65d7e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,621</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations" id="Fact_62f126c4debc44e59479d74b8628e0a7" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,439</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations" id="Fact_46fae6cb48dd431699d3f86afbd4de9f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">65,440</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Purchases of treasury stock</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfCommonStock" id="Fact_541f3f90a9de42ba96b8f6043825f16c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfCommonStock" id="Fact_0164da40f9e14706aa69d87d5e56a9d9" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfCommonStock" id="Fact_e0af6cc000324ade82595657c3b45753" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Contributions from noncontrolling interests</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMinorityShareholders" id="Fact_361ba8e11eb4446f9a68ff81f46a76f2" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMinorityShareholders" id="Fact_423d1e54881b483cb03075a704a31392" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ProceedsFromMinorityShareholders" id="Fact_5f6f5343bac64bf49a1289706874beb4" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,995</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Proceeds from share-based arrangements</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" id="Fact_44d062dbe5474cc0909d8787ae01849f" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,916</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" id="Fact_86b8d8f99af94ec8b8b5e486ee318fd5" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,248</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" id="Fact_fb38bbde3c7b437cb6d3b31da2d60538" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,749</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net settlements of restricted stock awards</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="plab:NetSettlementsOfRestrictedStockAwards" id="Fact_b9cdbee17ed54fda84dfcfaa06b643f4" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,025</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="plab:NetSettlementsOfRestrictedStockAwards" id="Fact_48eacc83d7ea49d4b9e9a00db371d38f" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,302</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="plab:NetSettlementsOfRestrictedStockAwards" id="Fact_ac4161e3126945c19e90c3a7b86f8595" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,471</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net cash used in financing activities</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_efad22693eea463487556c2da5f1601a" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">7,730</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_d0899eba201540d8a4d8099d8b9ba7ac" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">18,493</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_29dbf8a13911449f85150128fbb76fb6" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">38,689</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effects of exchange rate changes on cash, cash equivalents, and restricted cash</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_b20772394eb8428d9d6c9cf1831bd97d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,127</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_6fbe6d8d7dd7403b9756ffbc76e92f56" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,680</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_1498a44a29234b82abf82a31081d4454" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">46,012</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net increase in cash, cash equivalents, and restricted cash</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_e88a4e98c38e457bbfff5a92e0bbeac2" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">99,376</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_aad391c443ab4896b8903504389354f6" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">179,458</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_6cef9c29dce64e7f980212b3aae13094" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,729</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash, cash equivalents, and restricted cash at beginning of year</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_dffae657a195452ca99503119b802d18" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">501,867</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_ef9a3085b2da47738394e3452337043b" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">322,409</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_1b245e9aa1a342f39225ab14d8a72644" contextRef="c20211031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">279,680</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash, cash equivalents, and restricted cash at end of year</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_6670afdef54b4f3c8d25dbaa23759b06" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">601,243</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_1108b6a4813645d2b3d3c57a4491faa0" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">501,867</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_0674c0332a0849febc2bbe4bb0a2988f" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">322,409</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Less: Ending restricted cash<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:RestrictedCash" id="Fact_a13b596a69144e758cc86eb7d8d4ac82" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,758</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:RestrictedCash" id="Fact_319adf64a06f4359a2da1870c69230d1" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,575</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:RestrictedCash" id="Fact_5b580cc0653d4945b61b883e7160657f" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,729</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cash and cash equivalents at end of year</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_ae7824451f4046648f872e038b8f95a5" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">598,485</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_ad76e39ca6154a129e8cb38e0e3e470f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">499,292</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_285514c853be476a95eeb3c13012be65" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">319,680</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Supplemental disclosure of non-cash information:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accruals for property, plant and equipment not yet paid<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" id="Fact_e9727955b9624be3bf0d11c504bde937" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,217</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" id="Fact_7137d9adff4f42db80b1b719f5d3b240" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,607</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" id="Fact_200bf96851314b7cb8db32c3be7edac0" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,266</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" rowspan="1">
            <div style="margin-left: 9pt">
              <div style="margin-left: 9pt">Expected refundable federal investment tax credit</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="plab:ExpectedRefundableFederalInvestmentTaxCredit" id="Fact_1c061d1a6f044db19dae06bc265519e9" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,013</ix:nonFraction> <br/>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;<ix:nonFraction name="plab:ExpectedRefundableFederalInvestmentTaxCredit" id="Fact_e35b3aa1d31442d3a93b760343c0bb37" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction><br/>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" rowspan="1">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;<ix:nonFraction name="plab:ExpectedRefundableFederalInvestmentTaxCredit" id="Fact_e70983ee1a6d4a0db6ac777f331e6e1e" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction><br/>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

  </tr>


</table>
    <div style="text-align: left;"><br/>
    </div>

    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">See accompanying notes to consolidated financial statements.</div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">43</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor-->PHOTRONICS, INC.</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor--><!--Anchor--><!--Anchor-->Notes to Consolidated Financial Statements<a id="FinancialStatements"><!--Anchor--></a></div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Years Ended October 31, 2024, October 31, 2023 and October 31, 2022</div>

    <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands, except share amounts)</div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);"> <ix:nonNumeric name="us-gaap:SignificantAccountingPoliciesTextBlock" id="Text_4bb224f83a094ff68cd12a4b0fc1a5c5" contextRef="c20231101to20241031" escape="true" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd1">
<div><span style="font-size: 10pt;">  </span></div>
</ix:nonNumeric>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd1" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 1 - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd2" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd3" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd4" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd5" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd6">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Nature of Business and Basis of Presentation</div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd6" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd7">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd7" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd8">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd8" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd9">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
      <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd9" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd10">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Description of Business</div>
</ix:continuation>
    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd10" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd11">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd11" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd12">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd12" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd13">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd13" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd14">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;Photronics, Inc. (&#8220;Photronics&#8221;, &#8220;the Company&#8221;, &#8220;we&#8221;, &#8220;our&#8221;, or &#8220;us&#8221;) is one of the world&#8217;s leading manufacturers of
        photomasks, which are high-precision photographic quartz or glass plates containing microscopic images of electronic circuits. Photomasks are a key element in the manufacture of ICs and FPDs, and are used as masters to transfer circuit patterns
        onto semiconductor wafers and FPD substrates during the fabrication of integrated circuits, a variety of FPDs and, to a lesser extent, other types of electrical and optical components. The Company currently has <ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_6209b9c989aa447984d6b49575d8ca5e" contextRef="c20231101to20241031" unitRef="U004" decimals="INF" scale="0" format="ixt-sec:numwordsen">eleven</ix:nonFraction> manufacturing facilities, located in Taiwan (<ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_dc04e5ea72534a43a364132c6704fea3" contextRef="c20231101to20241031_StatementGeographicalAxis_TW" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">3</ix:nonFraction>),



        China (<ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_3da749a0273345229b454c665eafc8e2" contextRef="c20231101to20241031_StatementGeographicalAxis_CN" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">2</ix:nonFraction>), Korea (<ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_b2da0c955dea4a2ba5968895ee790d7f" contextRef="c20231101to20241031_StatementGeographicalAxis_KR" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">1</ix:nonFraction>), the
        United States (<ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_0320488616584aa4849f604736bf9c1f" contextRef="c20231101to20241031_StatementGeographicalAxis_US" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">3</ix:nonFraction>), and Europe (<ix:nonFraction name="plab:NumberOfManufacturingFacilities" id="Fact_e3f21f39acad452e9c32f5d82288374b" contextRef="c20231101to20241031_StatementGeographicalAxis_EuropeMember" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">2</ix:nonFraction>).<br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd14" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd15">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd15" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd16">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd16" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd17">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd17" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd18">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;The Company operates as a single operating segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing microscopic images of electronic circuits for use
        in the fabrication of IC&#8217;s and FPDs. In accordance with ASC 280 &#8211; &#8220;<span style="font-style: italic;">Segment Reporting</span>&#8221;, the Company&#8217;s chief operating decision maker has been identified as the Chief Executive Officer, who reviews operating
        results to make decisions about allocating resources and assessing performance for the entire Company. Existing guidance, which is based on a management approach to segment reporting, establishes requirements to report selected segment information
        quarterly and to report annually entity-wide disclosures about products and services, major customers, and the countries in which the entity holds material assets and reports revenue. All material operating units qualify for aggregation under
        &#8220;Segment Reporting&#8221; due to their similar customer base and similarities in: economic characteristics; nature of products and services; and procurement, manufacturing and distribution processes. Since the Company operates in one segment, all
        financial information required by &#8220;Segment Reporting&#8221; can be found in the accompanying notes to consolidated financial statements.</span><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd18" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd19">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd19" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd20">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd20" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd21"><ix:nonNumeric name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" id="Text_2bf61a4d05d34bd9a2044d0a12f6350a" contextRef="c20231101to20241031" escape="true" continuedAt="Text_9f74e5a5a5764e51b97890dbb33810ab1">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd21" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd22"><ix:continuation id="Text_9f74e5a5a5764e51b97890dbb33810ab1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold; font-style: italic; font-size: 10pt;">Basis of Presentation</span><span style="font-size: 10pt;"><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; The consolidated financial statements are prepared in conformity with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;). The accounting policies used to prepare these financial statements are the same as
        those used to prepare the consolidated financial statements in prior years, except as described in these notes or for the adoption of new standards as outlined below.<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd22" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd23">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd23" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd24">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd24" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd25"><ix:nonNumeric name="us-gaap:ConsolidationPolicyTextBlock" id="Text_61d99c3db7be485982ae0ee8dc274634" contextRef="c20231101to20241031" escape="true" continuedAt="Text_732fce565d984149a449889e19ad33671">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd25" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd26"><ix:continuation id="Text_732fce565d984149a449889e19ad33671" continuedAt="Text_732fce565d984149a449889e19ad33672">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;">Principles of Consolidation</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd26" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd27"><ix:continuation id="Text_732fce565d984149a449889e19ad33672" continuedAt="Text_732fce565d984149a449889e19ad33673">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd27" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd28"><ix:continuation id="Text_732fce565d984149a449889e19ad33673" continuedAt="Text_732fce565d984149a449889e19ad33674">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd28" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd29"><ix:continuation id="Text_732fce565d984149a449889e19ad33674" continuedAt="Text_732fce565d984149a449889e19ad33675">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd29" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd30"><ix:continuation id="Text_732fce565d984149a449889e19ad33675">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">The accompanying consolidated financial statements include the accounts of Photronics, Inc., its
          wholly owned subsidiaries, in which Photronics is considered the primary beneficiary, and the majority-owned subsidiaries which it controls.</span><br/>
        <br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">All intercompany balances and transactions have been eliminated in consolidation.<br/>
        </span><br/>
        &#160;&#160;&#160;&#160;&#160; &#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">Noncontrolling interests in subsidiaries related to Photronics ownership interests of
          less than <ix:nonFraction name="plab:PercentageOfOwnershipInterestInSubsidiaries" id="Fact_c4296eff2b394bf085bef40a6311ee6a" contextRef="c20241031" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">100</ix:nonFraction>% are reported as Noncontrolling interests in the consolidated balance sheets. The results of noncontrolling ownership
          interests held by Photronics, net of tax, are reported as Net (income) attributable to noncontrolling interests in the consolidated statements of income.</span></span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd30" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd31">
<div><span style="font-size: 10pt;">
      <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:continuation>
    <div><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd31" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd32">
<div><br/></div>
</ix:continuation>
      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">44</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>
<ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd32" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd33"><ix:nonNumeric name="us-gaap:UseOfEstimates" id="Text_f770b712708449d89b014810427068e4" contextRef="c20231101to20241031" escape="true" continuedAt="Text_63283a3dd2e44a11a18d0987af2de0581">
<div><span style="font-size: 10pt;"> </span>
     </div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd33" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd34"><ix:continuation id="Text_63283a3dd2e44a11a18d0987af2de0581" continuedAt="Text_63283a3dd2e44a11a18d0987af2de0582">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Estimates and Assumptions</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd34" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd35"><ix:continuation id="Text_63283a3dd2e44a11a18d0987af2de0582" continuedAt="Text_63283a3dd2e44a11a18d0987af2de0583">
<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd35" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd36"><ix:continuation id="Text_63283a3dd2e44a11a18d0987af2de0583" continuedAt="Text_63283a3dd2e44a11a18d0987af2de0584">
<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd36" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd37"><ix:continuation id="Text_63283a3dd2e44a11a18d0987af2de0584" continuedAt="Text_63283a3dd2e44a11a18d0987af2de0585">
<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd37" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd38"><ix:continuation id="Text_63283a3dd2e44a11a18d0987af2de0585">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The preparation of financial statements in
      conformity with U.S. GAAP requires Photronics to make estimates and assumptions that affect amounts reported in them. The Company&#8217;s estimates are based on historical experience and on various assumptions that are believed to be reasonable, based on
      the facts and circumstances available at the time they are made. Subsequent actual results may differ from such estimates. The Company reviews these estimates periodically and reflect any effects of revisions in the period in which they are
      determined.</div>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd38" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd39">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
    </div>
</ix:continuation>
    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd39" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd40"><ix:nonNumeric name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="Text_057bcd5b7b61467f87a737a243526abf" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f32b44609e054b8cbd874648f6b709721">
<div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Translation of Foreign Currency Financial Statements</span><span style="font-size: 10pt;"><br/>
      </span></div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd40" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd41"><ix:continuation id="Text_f32b44609e054b8cbd874648f6b709721" continuedAt="Text_f32b44609e054b8cbd874648f6b709722">
<div><span style="font-size: 10pt;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd41" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd42"><ix:continuation id="Text_f32b44609e054b8cbd874648f6b709722" continuedAt="Text_f32b44609e054b8cbd874648f6b709723">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd42" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd43"><ix:continuation id="Text_f32b44609e054b8cbd874648f6b709723">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Photronics reporting currency is the U.S. dollar. The functional currency of the majority of Photronics foreign subsidiaries is their local currency. As such, amounts included in the consolidated
        statements of income, comprehensive income, cash flows, and changes in equity are translated using average exchange rates during each period. Assets and liabilities are translated at period-end exchange rates and resulting foreign currency
        translation adjustments are recorded in the consolidated balance sheets as a component of Accumulated other comprehensive loss.</span></div>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd43" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd44">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>

    <ix:nonNumeric name="plab:ForeignCurrencyTransactionsPolicyTextBlock" id="Text_e8e532e928d547f693904f3ac53faa42" contextRef="c20231101to20241031" escape="true" continuedAt="Text_cde64cc7ba384b95aa5ddec62a806e5c1"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd44" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd45">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-weight: bold;">Transactions</span><br/>
      </span></div>
</ix:continuation></ix:nonNumeric>
    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:continuation id="Text_cde64cc7ba384b95aa5ddec62a806e5c1" continuedAt="Text_cde64cc7ba384b95aa5ddec62a806e5c2"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd45" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd46">
<div><span style="font-size: 10pt;"> </span> <span style="font-size: 10pt;"> </span> <span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_cde64cc7ba384b95aa5ddec62a806e5c2" continuedAt="Text_cde64cc7ba384b95aa5ddec62a806e5c3"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd46" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd47">
<div><span style="font-size: 10pt;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd47" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd48"><ix:continuation id="Text_cde64cc7ba384b95aa5ddec62a806e5c3">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Monetary assets and liabilities denominated in
          currencies other than the functional currency are remeasured into their respective functional currencies at exchange rates in effect at the balance sheet date. The resulting exchange gain or loss is included in Photronics<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#8217;</span> consolidated statements of income as Foreign <span style="font-size: 10pt; font-family: 'Times New Roman';">currency transactions impacts,</span><span style="font-family: 'Times New Roman';"> net</span>.</span><span style="font-size: 10pt;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd48" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd49">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd49" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd50">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal;"> <br/>
      </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd50" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd51"><ix:nonNumeric name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="Text_eaaf3f5df03f459da6de2a78baba4f02" contextRef="c20231101to20241031" escape="true" continuedAt="Text_2a1c8e189a67453d8613ab0643c59e9c1">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd51" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd52"><ix:continuation id="Text_2a1c8e189a67453d8613ab0643c59e9c1" continuedAt="Text_2a1c8e189a67453d8613ab0643c59e9c2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Cash and Cash Equivalents</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd52" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd53"><ix:continuation id="Text_2a1c8e189a67453d8613ab0643c59e9c2" continuedAt="Text_2a1c8e189a67453d8613ab0643c59e9c3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd53" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd54"><ix:continuation id="Text_2a1c8e189a67453d8613ab0643c59e9c3" continuedAt="Text_2a1c8e189a67453d8613ab0643c59e9c4">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd54" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd55"><ix:continuation id="Text_2a1c8e189a67453d8613ab0643c59e9c4" continuedAt="Text_2a1c8e189a67453d8613ab0643c59e9c5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd55" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd56"><ix:continuation id="Text_2a1c8e189a67453d8613ab0643c59e9c5">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Cash and cash equivalents include cash and highly liquid investments with an original
        maturity of three months or less, readily convertible to known amounts of cash, and so near to their maturity that they present insignificant risk of changes in value because of changes in interest rates. Restricted cash is included with cash and
        cash equivalents when reconciling the beginning-of-period and end-of-period total amounts shown on the consolidated statements of cash flows. The carrying values of cash equivalents approximate their fair values, due to the short-term maturities of
        these instruments.</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd56" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd57">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd57" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd58">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"> <br/>
      </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd58" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd59"><ix:nonNumeric name="us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" id="Text_046b9ab3f7a245079dc31e39773a9a59" contextRef="c20231101to20241031" escape="true" continuedAt="Text_d7a1324c2c3e4f4d9b429d88b1f159d81">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd59" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd60"><ix:continuation id="Text_d7a1324c2c3e4f4d9b429d88b1f159d81" continuedAt="Text_d7a1324c2c3e4f4d9b429d88b1f159d82">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> Restricted Cash</span></span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd60" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd61"><ix:continuation id="Text_d7a1324c2c3e4f4d9b429d88b1f159d82" continuedAt="Text_d7a1324c2c3e4f4d9b429d88b1f159d83">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd61" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd62"><ix:continuation id="Text_d7a1324c2c3e4f4d9b429d88b1f159d83" continuedAt="Text_d7a1324c2c3e4f4d9b429d88b1f159d84">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> <br/>
        </span></span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd62" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd63"><ix:continuation id="Text_d7a1324c2c3e4f4d9b429d88b1f159d84" continuedAt="Text_d7a1324c2c3e4f4d9b429d88b1f159d85">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd63" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd64"><ix:continuation id="Text_d7a1324c2c3e4f4d9b429d88b1f159d85">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Restricted cash in the amounts of $<ix:nonFraction name="us-gaap:RestrictedCash" id="Fact_ae6fea1b5bb34d71bc96cda2c9f6701b" contextRef="c20241031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.8</ix:nonFraction> million and $<ix:nonFraction name="us-gaap:RestrictedCash" id="Fact_891d4a5d97b94058a22aa7ba8b24e168" contextRef="c20231031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.6</ix:nonFraction> million are included in Other assets on the
        Company&#8217;s October 31, 2024 and October 31, 2023, consolidated balance sheets, respectively. The restrictions on these amounts are primarily related to land lease agreements and customs requirements.<br/>
      </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd64" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd65">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd65" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd66">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd66" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd67">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <div>
      <ix:nonNumeric name="us-gaap:InvestmentPolicyTextBlock" id="Text_2af364eac4d3448dbb8110d0fef29d43" contextRef="c20231101to20241031" escape="true" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3821"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd67" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd68">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Investments</div>
</ix:continuation></ix:nonNumeric>
      <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
        <div>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3821" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3822"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd68" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd69">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: bold; text-align: left; text-indent: 0px; text-transform: none;"><br/>
          </div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3822" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3823"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd69" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd70">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-size: 10pt;">The Company invests in various bank time deposits, money markets and U.S. Government Securities. </span><span style="font-size: 10pt;">The Company&#8217;s&#160;<span style="color: rgb(0, 0, 0);">classification





















                of investments is as follows:</span></span></div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3823" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3824"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd70" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd71">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0);"> <br/>
            </span></div>
</ix:continuation></ix:continuation>
          <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">
            <div>
              <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3824" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3825"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd71" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd72">
<table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);" colspan="1">Maturing within three months or less from the date of purchase </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Cash and cash equivalents</div>
                    </td>

  </tr>

  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt;">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td style="width: 60%; vertical-align: top; font-size: 10pt;" rowspan="1" colspan="1">
                      <div>Maturing, as of the date of purchase, more than three months, but </div>
                      <div>with remaining maturities of less than one year, from the balance sheet date </div>
                    </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right;" rowspan="1">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Short-term investments</div>
                    </td>

  </tr>


</table>
</ix:continuation></ix:continuation>
              <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3825" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3826"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd72" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd73">
<table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt; text-align: center; background-color: rgb(204, 238, 255);" colspan="1">-</td>

    <td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: left; font-family: 'Times New Roman';">Maturing one year or more from the balance sheet date</div>
                    </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Long-term marketable investments</div>
                    </td>

  </tr>


</table>
</ix:continuation></ix:continuation>
            </div>

          </div>

          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3826" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3827"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd73" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd74">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;">&#160;&#160;&#160;&#160;</div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3827" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3828"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd74" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd75">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">As of
            October 31, 2024 and 2023, all of the Company&#8217;s investments from their dates of purchase had remaining maturities of more than three months, but less than one year, and have been classified as short-term investments.</div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3828" continuedAt="Text_843a305eccc84680a1b9a5956a2ce3829"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd75" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd76">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce3829" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38210"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd76" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd77">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">Based
            upon the Company&#8217;s intent and ability to hold its time deposits to maturity (which maturities range up to twelve months at purchase), such securities have been classified as held-to-maturity and are carried at amortized cost, which approximates
            market value. Money markets are classified as cash and cash equivalents. The Company&#8217;s U.S. Government Securities are classified as available-for-sale. Available-for-sale investments are reported at fair value, with unrealized gains or losses
            (net of tax) reported in Accumulated other comprehensive income (loss). In the event of a sale of these securities, the Company would determine the cost of the investment sold at the specific individual security level and would include any gain
            or loss in&#160;<span style="font-style: italic;">Interest income and other income, net</span>, where the Company also reports periodic interest earned and the amortization (accretion) of discounts (premiums) related to these investments.</div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38210" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38211"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd77" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd78">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"> <br/>
          </div>
</ix:continuation></ix:continuation>
          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">45</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

            </div>

          </div>


          <ix:nonNumeric name="us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock" id="Text_b9d7fd201f2646829fbb46e4859f0dee" contextRef="c20231101to20241031" escape="true" continuedAt="Text_7eb998b7f2114e4abf09a77d73989fb61"><ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38211" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38212"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd78" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd79">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            table below provides information on the Company&#8217;s available-for-sale debt securities and time deposits classified as short-term investments. </div>
</ix:continuation></ix:continuation></ix:nonNumeric>
          <ix:continuation id="Text_7eb998b7f2114e4abf09a77d73989fb61" continuedAt="Text_7eb998b7f2114e4abf09a77d73989fb62"><ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38212" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38213"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd79" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd80">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>
</ix:continuation></ix:continuation></ix:continuation>
          <ix:continuation id="Text_7eb998b7f2114e4abf09a77d73989fb62" continuedAt="Text_7eb998b7f2114e4abf09a77d73989fb63"><ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38213" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38214"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd80" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd81">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td valign="bottom" style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2024</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2023</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; font-size: 10pt;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"> Cost</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Cost</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">U.S. Government Securities<sup>(1)</sup></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_ba63127f9d614ec28d81775a02acc680" contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_362a6ee1bf6f42a7a72518d67cadb9f7" contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_a1e0b50b0c684fdd8e637f7d41980f66" contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_42988dd9d64c4d60973a5a2c1243f674" contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_a5b6b365c7df4dd8b16cffe864a3cff2" contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,913</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_2b0f7ff68d6f4359bd6720e33f04a097" contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(<ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_fd69bfb6cfbd446c973089a5001d8511" contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_b43febad08ae4b4b986cc014d9b85d9d" contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,915</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 2px;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Time deposits</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_5fcca24198d54cf4babdd0317be50e73" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_1e8f0fa528764cac861218992fa1e735" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_30114c519135426c8cdbbb1aefb0353d" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_48e1bf5222484f22ad9ae2c89c0319c1" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_b3593d4276274ce3a077006d7b2179a5" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_8e4b4420e4de44999239fc4ba8d1063a" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_858749185ae14e0daea34860778d0cf1" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_68a4e284bcad424d9b4d3c6ee05d1c6f" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Total</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_2a24dd4482db4140934aaee89f42abec" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_5064da03a9a84fba80abd76faf780221" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_74271b0df9064b8c925000a02fdf653a" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_417ddedf67ee481888b6b138848bf642" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" id="Fact_8c67d72cbbe747049431330861d21e81" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,913</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" id="Fact_32af6766a5724b948c9bd2d465beb00c" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(<ix:nonFraction name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" id="Fact_e684db4061e244a19ff8d7dc96f70831" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;"><ix:nonFraction name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" id="Fact_7274197d026b4f6b89ee79267a87e200" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,915</ix:nonFraction></div>
                </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation></ix:continuation>
          <ix:continuation id="Text_7eb998b7f2114e4abf09a77d73989fb63" continuedAt="Text_7eb998b7f2114e4abf09a77d73989fb64"><ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38214" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38215"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd81" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd82">
<div><span style="font-size: 10pt;"><br/>
            </span> </div>
</ix:continuation></ix:continuation></ix:continuation>
          <div>
            <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38215" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38216"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd82" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd83"><ix:continuation id="Text_7eb998b7f2114e4abf09a77d73989fb64">
<div>
              <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="width: 18pt; font-size: 10pt;">&#160;</td>

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0); text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0);"><ix:footnote id="Foot_0174683df2a3474f86a5d3d29d6bc184" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">Matured during 2024</ix:footnote></div>
                    </td>

  </tr>


</table>

            </div>
</ix:continuation></ix:continuation></ix:continuation>
          </div>

          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38216" continuedAt="Text_843a305eccc84680a1b9a5956a2ce38217"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd83" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd84">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_843a305eccc84680a1b9a5956a2ce38217"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd84" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd85">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            Company&#8217;s investments in marketable securities consist primarily of investments in time deposits and U.S. Government Securities. Market values were determined for each individual security in the investment portfolio. When evaluating the
            investments for other-than-temporary impairment, the Company reviews factors such as length of time and extent to which fair value has been below cost basis, the financial condition of the issuer, and the Company&#8217;s ability and intent to hold
            the investment for a period of time, which may be sufficient for anticipated recovery in market values.</div>
</ix:continuation></ix:continuation>
           </div>

      </div>

      <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd85" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd86">
<div><br/></div>
</ix:continuation>
    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd86" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd87"><ix:nonNumeric name="us-gaap:CreditLossFinancialInstrumentPolicyTextBlock" id="Text_cc36e8e20fc3468ba4bcf1ac165dbc6b" contextRef="c20231101to20241031" escape="true" continuedAt="Text_a821fa5b299b4429b1624aa53cf61cc21">
<div><span style="font-size: 10pt;">  </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd87" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd88"><ix:continuation id="Text_a821fa5b299b4429b1624aa53cf61cc21" continuedAt="Text_a821fa5b299b4429b1624aa53cf61cc22">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-size: 10pt;">Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd88" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd89"><ix:continuation id="Text_a821fa5b299b4429b1624aa53cf61cc22" continuedAt="Text_a821fa5b299b4429b1624aa53cf61cc23">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd89" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd90"><ix:continuation id="Text_a821fa5b299b4429b1624aa53cf61cc23" continuedAt="Text_a821fa5b299b4429b1624aa53cf61cc24">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd90" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd91"><ix:continuation id="Text_a821fa5b299b4429b1624aa53cf61cc24" continuedAt="Text_a821fa5b299b4429b1624aa53cf61cc25">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd91" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd92"><ix:continuation id="Text_a821fa5b299b4429b1624aa53cf61cc25">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">&#160;We generally record the Company&#8217;s accounts receivable at their billed amounts. The
        Company recognizes unbilled receivables when the Company has satisfied its performance obligations, has an unconditional right to consideration, but has not yet issued an invoice.&#160; All outstanding past due customer invoices are reviewed for
        collectability during, and at the end of, every reporting period. To the extent that the Company believes a loss on the collection of a customer invoice is probable, the Company records the loss and credits an allowance for credit losses. In the
        event that an amount is determined to be uncollectible, the Company charges the allowance for credit losses and derecognizes the related receivable. Refer to the Company&#8217;s revenue recognition policy, below, for additional information on the
        Company&#8217;s accounting for accounts receivable.</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd92" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd93">
<div><span style="font-size: 10pt;">  </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd93" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd94">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd94" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd95"><ix:nonNumeric name="us-gaap:InventoryPolicyTextBlock" id="Text_0cc7f00793ba403aa43eb308b213be40" contextRef="c20231101to20241031" escape="true" continuedAt="Text_e75058562e7e4125b42b390f2419829a1">
<div><span style="font-size: 10pt;"> </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd95" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd96"><ix:continuation id="Text_e75058562e7e4125b42b390f2419829a1" continuedAt="Text_e75058562e7e4125b42b390f2419829a2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Inventories</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd96" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd97"><ix:continuation id="Text_e75058562e7e4125b42b390f2419829a2" continuedAt="Text_e75058562e7e4125b42b390f2419829a3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd97" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd98"><ix:continuation id="Text_e75058562e7e4125b42b390f2419829a3" continuedAt="Text_e75058562e7e4125b42b390f2419829a4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd98" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd99"><ix:continuation id="Text_e75058562e7e4125b42b390f2419829a4" continuedAt="Text_e75058562e7e4125b42b390f2419829a5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd99" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd100"><ix:continuation id="Text_e75058562e7e4125b42b390f2419829a5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-size: 10pt;">&#160;Inventories are stated at the lower
        of cost, determined under the first-in, first-out (&#8220;FIFO&#8221;) method, or net realizable value. Please refer to Note 4 for additional information on the Company&#8217;s inventories. Inventory reserves are established when conditions indicate that the net
        realizable value is less than costs due to assigned expiration dates or other causes based on individual facts and circumstances. If net realizable value is less than cost at the balance sheet date, the carrying amount is reduced to the realizable
        value, and the difference is recognized as a loss on valuation of inventories within cost of sales.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd100" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd101">
<div><span style="font-size: 10pt;">
      <span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd101" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd102">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd102" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd103"><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="Text_87740ec7d7f6422f82654dfcf173d070" contextRef="c20231101to20241031" escape="true" continuedAt="Text_799d0c9238904ddaa402f2348448326f1">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd103" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd104"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f1" continuedAt="Text_799d0c9238904ddaa402f2348448326f2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Property, Plant and Equipment, Net<br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd104" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd105"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f2" continuedAt="Text_799d0c9238904ddaa402f2348448326f3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd105" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd106"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f3" continuedAt="Text_799d0c9238904ddaa402f2348448326f4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd106" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd107"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f4" continuedAt="Text_799d0c9238904ddaa402f2348448326f5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd107" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd108"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f5" continuedAt="Text_799d0c9238904ddaa402f2348448326f6">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Property, plant and equipment, except as explained below under &#8220;Impairment of Long-Lived Assets,&#8221; is stated at cost less
      accumulated depreciation and amortization. Repairs and maintenance, as well as renewals and replacements of a routine nature, are charged to operations as incurred, while those that improve or extend the lives of existing assets are capitalized. Upon
      sale or other disposition, the cost of the asset and its related accumulated depreciation are removed from the accounts, and any resulting gain or loss is reflected in earnings.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd108" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd109"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f6" continuedAt="Text_799d0c9238904ddaa402f2348448326f7">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd109" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd110"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f7" continuedAt="Text_799d0c9238904ddaa402f2348448326f8">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd110" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd111"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f8" continuedAt="Text_799d0c9238904ddaa402f2348448326f9">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd111" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd112"><ix:continuation id="Text_799d0c9238904ddaa402f2348448326f9">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization, essentially all of which are included in <span style="font-style: italic;">Cost of goods sold</span>
      in the Company&#8217;s consolidated statements of income, are computed using the straight-line method over the estimated useful lives of the related assets. Buildings and improvements are depreciated over&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_eec1f05d8fd2433b9c1a60e34e4d0097" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember" format="ixt-sec:duryear">10</ix:nonNumeric> to&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_01ed77865029400a8e394725483d57e0" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MaximumMember" format="ixt-sec:duryear">39</ix:nonNumeric> years, machinery and equipment over&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_811002ddf15e46bfb93f6b6adb7898b9" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember" format="ixt-sec:duryear">5</ix:nonNumeric> to&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_0bbdea80e0d740259d468486cf6f8161" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember" format="ixt-sec:duryear">15</ix:nonNumeric> years, and furniture, fixtures, and
      office equipment over&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_fd3652ca4cb041cdb77308076dabd38e" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember" format="ixt-sec:duryear">3</ix:nonNumeric> to&#160;<ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_204288c1c7df4cdaacc2f909fb6d262f" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember" format="ixt-sec:duryear">5</ix:nonNumeric>
      years. Leasehold improvements are amortized over the lesser of the life of the lease or the estimated useful life of the improvement. The Company employs judgment when making assumptions about the estimated useful lives and depreciation periods the
      Company assigns to property, plant and equipment, and when events or changes in circumstances such as a significant industry downturn, plant closures, technological obsolescence, or other occurrences indicate that their carrying amounts may not be
      recoverable.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd112" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd113">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd113" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd114">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">46</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd114" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd115"><ix:nonNumeric name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="Text_4dfa491fcdfe4cd79334c6d947fe5c41" contextRef="c20231101to20241031" escape="true" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c1">
<div><span style="font-size: 10pt;">  </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd115" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd116"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c1" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Impairment of Long-Lived Assets</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd116" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd117"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c2" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd117" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd118"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c3" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd118" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd119"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c4" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd119" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd120"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c5" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c6">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such
      assets may not be recoverable. Determinations of recoverability are based upon the Company&#8217;s judgment and estimates of undiscounted future cash flows resulting from the use of the assets and their eventual disposition. Measurement of an impairment
      loss for long-lived assets that the Company expects to hold and use is based on the fair value of the assets, determined using a market or income approach, compared with the carrying value of the asset. The carrying values of assets determined to be
      impaired would be reduced to their estimated fair values.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd120" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd121"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c6" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c7">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd121" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd122"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c7" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c8">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd122" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd123"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c8" continuedAt="Text_7bfb352dcea743c4af3b4f713d89058c9">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd123" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd124"><ix:continuation id="Text_7bfb352dcea743c4af3b4f713d89058c9">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">Property, plant and equipment and other long-lived assets to be sold or otherwise disposed of are
        reported at the lower of carrying amount or fair value less cost to sell.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd124" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd125">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd125" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd126">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd126" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd127"><ix:nonNumeric name="plab:TreasuryStockPolicyTextBlock" id="Text_af0db00091324125a3bea7e9bcc29e6a" contextRef="c20231101to20241031" escape="true" continuedAt="Text_c02cdef29f4e4d6dbf6ddab90555a4801">
<div><span style="font-size: 10pt;"> </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd127" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd128"><ix:continuation id="Text_c02cdef29f4e4d6dbf6ddab90555a4801" continuedAt="Text_c02cdef29f4e4d6dbf6ddab90555a4802">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Treasury Stock</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd128" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd129"><ix:continuation id="Text_c02cdef29f4e4d6dbf6ddab90555a4802" continuedAt="Text_c02cdef29f4e4d6dbf6ddab90555a4803">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd129" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd130"><ix:continuation id="Text_c02cdef29f4e4d6dbf6ddab90555a4803" continuedAt="Text_c02cdef29f4e4d6dbf6ddab90555a4804">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd130" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd131"><ix:continuation id="Text_c02cdef29f4e4d6dbf6ddab90555a4804" continuedAt="Text_c02cdef29f4e4d6dbf6ddab90555a4805">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd131" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd132"><ix:continuation id="Text_c02cdef29f4e4d6dbf6ddab90555a4805">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The Company records treasury stock purchases under the cost method,
      recording the entire cost of the acquired stock as treasury stock. Gains and losses on subsequent reissuances would be credited or charged to additional paid-in capital, and the Company would employ the average cost method (with average cost being
      determined separately for each share repurchase program), in the event that the Company subsequently reissues shares. When the Company retires the Company&#8217;s treasury stock, any excess of the repurchase price paid over par value is allocated between
      additional paid-in capital and retained earnings.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd132" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd133">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd133" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd134">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd134" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd135"><ix:nonNumeric name="us-gaap:RevenueRecognitionPolicyTextBlock" id="Text_6c23014256654bdd8c75ce2174dea7e7" contextRef="c20231101to20241031" escape="true" continuedAt="Text_577ad7d67ca346d9a03a83ba471056061">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd135" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd136"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056061" continuedAt="Text_577ad7d67ca346d9a03a83ba471056062">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Revenue Recognition</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd136" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd137"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056062" continuedAt="Text_577ad7d67ca346d9a03a83ba471056063">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd137" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd138"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056063" continuedAt="Text_577ad7d67ca346d9a03a83ba471056064">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd138" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd139"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056064" continuedAt="Text_577ad7d67ca346d9a03a83ba471056065">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd139" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd140"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056065" continuedAt="Text_577ad7d67ca346d9a03a83ba471056066">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;The Company recognizes revenue when, or as, control of a good or service transfers to a customer, in
        an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those goods or services. The Company accounts for an arrangement as a revenue contract when each party has approved and is committed
        to perform under the contract, the rights of the contracting parties regarding the goods or services to be transferred and the payment terms are identifiable, the arrangement has commercial substance, and collection of consideration is probable.
        Substantially all of the Company&#8217;s revenue comes from the sales of photomasks. The Company typically contracts with the Company&#8217;s customers to sell sets of photomasks, which are comprised of multiple layers, the predominance of which the Company
        invoices as they ship to customers. As the photomasks are manufactured to customer specifications, they have no alternative use to the Company and, as the Company&#8217;s contracts generally provide the Company with the right to payment for work
        completed to date, the Company recognizes revenue as the Company performs, or &#8220;over time,&#8221; on most of the Company&#8217;s contracts. The Company measures the Company&#8217;s performance to date using an input method, which is based on the Company&#8217;s estimated
        costs to complete the various manufacturing phases of a photomask. At the end of a reporting period, there are a number of uncompleted revenue contracts on which the Company has performed; for any such contracts under which the Company is entitled
        to be compensated for the Company&#8217;s costs incurred plus a reasonable profit, the Company recognizes revenue and a corresponding contract asset for such performance. The Company accounts for shipping and handling activities that the Company performs
        after a customer obtains control of a good as being activities to fulfill the Company&#8217;s promise to transfer the good to the customer, rather than as promised services, or performance obligations, under the contract. The Company reports the
        Company&#8217;s revenue net of any sales or similar taxes the Company collects on behalf of governmental entities.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd140" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd141"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056066" continuedAt="Text_577ad7d67ca346d9a03a83ba471056067">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd141" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd142"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056067" continuedAt="Text_577ad7d67ca346d9a03a83ba471056068">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd142" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd143"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056068" continuedAt="Text_577ad7d67ca346d9a03a83ba471056069">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd143" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd144"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba471056069" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560610">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">As stated above, photomasks are manufactured to customer specifications in accordance with their proprietary designs; thus, they are
      individually unique. Due to their uniqueness and other factors, their transaction prices are individually established through negotiations with customers; consequently, the Company&#8217;s photomasks do not have standard or &#8220;list&#8221; prices. The transaction
      prices of the vast majority of the Company&#8217;s revenue contracts include only fixed amounts of consideration. In certain instances, such as when the Company offers a customer an early payment discount, an estimate of variable consideration would be
      included in the transaction price, but only to the extent that a significant reversal of revenue would not occur when the uncertainty related to the variability was resolved.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd144" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd145"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560610" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560611">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd145" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd146"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560611" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560612">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd146" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd147"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560612" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560613">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">47</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd147" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd148"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560613" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560614">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"><span style="font-size: 10pt;">Contract Assets and Contract Liabilities<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd148" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd149"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560614" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560615">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd149" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd150"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560615" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560616">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd150" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd151"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560616" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560617">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd151" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd152"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560617" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560618">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company recognizes a contract asset when the Company&#8217;s performance under a contract precedes the Company&#8217;s receipt of
      consideration from a customer, or before payment is due, and the Company&#8217;s receipt of consideration is conditional upon factors other than the passage of time. Contract assets reflect the Company&#8217;s transfer of control to customers of photomasks that
      are in process or completed but not yet shipped to customers. A receivable is recognized when the Company has an unconditional right to payment for the Company&#8217;s performance, which generally occurs when the Company ships the photomasks. The Company&#8217;s
      contract assets primarily consist of a significant amount of the Company&#8217;s in-process production orders and fully manufactured photomasks which have not yet shipped, for which the Company has an enforceable right to collect consideration (including a
      reasonable profit) in the event the in-process orders are cancelled by customers. On an individual contract basis, the Company nets contract assets with contract liabilities (deferred revenue) for financial reporting purposes. The Company&#8217;s net
      credit losses on the accounts receivable during 2024 were insignificant. The Company did <ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" id="Fact_14cabce1f43a4397b3ce9deea9c61584" contextRef="c20221101to20231031" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" id="Fact_0362ba9915c544d4b2a51071341ea4b6" contextRef="c20231101to20241031" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:CapitalizedContractCostImpairmentLoss" id="Fact_604649c3e02947518e6acdfd4a426f7a" contextRef="c20221101to20231031" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:CapitalizedContractCostImpairmentLoss" id="Fact_42775eb3fc824cd6aed551dc21de3d98" contextRef="c20231101to20241031" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction>t impair any contract assets or accounts
      receivable in 2024 or 2023.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd152" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd153"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560618" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560619">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd153" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd154"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560619" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560620">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd154" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd155"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560620" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560621">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd155" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd156"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560621" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560622">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Contract Costs</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd156" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd157"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560622" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560623">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd157" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd158"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560623" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560624">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd158" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd159"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560624" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560625">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd159" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd160"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560625" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560626">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company pays commissions to third-party sales agents for certain sales that they procure on the Company&#8217;s behalf. However, the
      bases of the commissions are the transaction prices of the sales, which are completed in less than one year; thus, no relationship is established with a customer that will result in future business. Therefore, the Company would not recognize any
      portion of these sales commissions as costs of obtaining a contract, nor does the Company currently foresee other circumstances under which the Company would recognize such assets.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd160" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd161"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560626" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560627">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd161" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd162"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560627" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560628">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd162" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd163"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560628" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560629">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd163" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd164"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560629" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560630">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-family: 'Times New Roman'; font-weight: bold; font-style: italic;">Remaining Performance Obligations</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd164" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd165"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560630" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560631">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd165" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd166"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560631" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560632">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd166" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd167"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560632" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560633">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd167" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd168"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560633" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560634">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;As the Company is typically required to fulfill customer orders within a short time period, the
        Company&#8217;s backlog of orders is generally not in excess of <span style="-sec-ix-hidden:Fact_5703f7f4215845d39c53f0c87db95a93">one</span> to <span style="-sec-ix-hidden:Fact_6a757c41eb204cc49bd749b3122d8f51">two</span> weeks for IC photomasks and <span style="-sec-ix-hidden:Fact_0b61858f2adb4362aa480cffdbcf8a66">two</span> to <span style="-sec-ix-hidden:Fact_fd0da33cff84449793d061ed13c41db6">three</span> weeks for FPD photomasks. However, the demand for some IC photomasks can extend beyond the traditional time period; thus the backlog, in some
        individual cases, can extend to as long as <span style="-sec-ix-hidden:Fact_9a2dc09c502043edb6ecdcfd73ea6e78">two</span> to <ix:nonNumeric name="plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod" id="Fact_8dc3f6b2322c4320b3c35a45b2159502" contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">three months</ix:nonNumeric>. More recently however, backlogs for most high demand products have returned to historical levels of less than a month. As allowed under ASC 606 &#8211; <span style="font-style: italic;">Revenue Contracts
          with Customers,</span> the Company has elected not to disclose the Company&#8217;s remaining performance obligations, which represent the costs associated with the completion of the manufacturing process of in-process photomasks related to contracts
        that have an original duration of one year or less.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd168" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd169"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560634" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560635">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd169" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd170"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560635" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560636">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd170" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd171"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560636" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560637">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd171" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd172"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560637" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560638">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Product Warranties</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd172" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd173"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560638" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560639">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd173" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd174"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560639" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560640">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd174" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd175"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560640" continuedAt="Text_577ad7d67ca346d9a03a83ba4710560641">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd175" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd176"><ix:continuation id="Text_577ad7d67ca346d9a03a83ba4710560641">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company&#8217;s photomasks are sold under warranties that generally range from <span style="-sec-ix-hidden:Fact_8a2b9076b8e94965b895c6c0a1257b9a">one</span> to <ix:nonNumeric name="plab:PeriodOfWarranty" id="Fact_44abf7a1e27d43b5967a6057a7bb1f81" contextRef="c20231101to20241031_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">twenty-four months</ix:nonNumeric>. The Company warrants that the Company&#8217;s
      photomasks conform to customer specifications, and the Company will typically repair, replace, or issue a refund for any photomasks that fail to do so. The warranties do not represent separate performance obligations in the Company&#8217;s revenue
      contracts. Historically, customer claims under warranties have been immaterial.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd176" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd177">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd177" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd178">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <div>
      <ix:nonNumeric name="us-gaap:LesseeLeasesPolicyTextBlock" id="Text_71454132d3f846f8bf0974ea2a655088" contextRef="c20231101to20241031" escape="true" continuedAt="Text_2320f83fe0bc45debc807c85028367051"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd178" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd179">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367051" continuedAt="Text_2320f83fe0bc45debc807c85028367052"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd179" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd180">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367052" continuedAt="Text_2320f83fe0bc45debc807c85028367053"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd180" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd181">
<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">&#160;&#160;&#160; The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the
          Company commits to entering the agreement and evaluates at that time whether the lease is an operating lease or a finance lease. The Company recognizes right-of-use assets and lease liabilities for operating and finance leases with terms greater
          than 12 months. Please refer to Note 11 &#8211; <span style="font-style: italic;">Leases</span> for additional information.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; The Company&#8217;s involvement in lease arrangements has typically been as a lessee. The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the Company commits to
          entering the agreement. An arrangement is determined to be a lease when it conveys to the Company the right to control the use of an identified asset for a period of time in exchange for consideration. The Company&#8217;s having the right to control an
          identified asset is determined by whether the Company is entitled to substantially all of its economic benefits and can direct its use. The Company recognizes leases on the Company&#8217;s consolidated balance sheet when a lessor makes an asset
          underlying a lease having a term in excess of twelve months available for the Company&#8217;s use. As allowed under ASC Topic 842 &#8211; &#8220;<span style="font-style: italic;">Leases</span>&#8221; (&#8220;Topic 842&#8221;), the Company has elected 1) not to apply the recognition
          requirements to leases that, at their commencement dates, have lease terms of twelve months or less and do not include options to purchase their underlying assets that the Company is reasonably certain to exercise and 2) for all classes of
          assets, the practical expedient to not separate lease components of a contract from non-lease components of a contract. <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">48</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367053" continuedAt="Text_2320f83fe0bc45debc807c85028367054"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd181" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd182">
<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"><br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; If an arrangement is determined to be, or includes a lease, the Company then applies the classification criteria in ASC 842 - <span style="font-style: italic;">Leases</span> to determine whether the lease is a finance lease or an
          operating lease. For both types of leases, at their commencement dates (which are the dates on which a lessor makes an underlying asset available for the Company&#8217;s use), the Company recognizes Right-of-Use (&#8220;ROU&#8221;) assets, which represent the
          Company&#8217;s rights to use the underlying assets, and lease liabilities which represent the Company&#8217;s obligation to make payments for such rights. The present value of lease payments over the term of the lease provides the basis for the initial
          measurement of ROU assets and their related lease liabilities. Variable lease payments, other than those that are dependent on an index or on a rate (at which they are measured on their commencement dates), are not included in the measurement of
          ROU assets and their related lease liabilities. Lease terms include extension periods if the lease agreement includes an option to extend the lease that the Company is reasonably certain to exercise. <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367054" continuedAt="Text_2320f83fe0bc45debc807c85028367055"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd182" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd183">
<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367055" continuedAt="Text_2320f83fe0bc45debc807c85028367056"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd183" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd184">
<div style="font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; The initial measurement process for finance leases and operating leases is the same, except that, for operating leases, the Company generally applies the
          Company&#8217;s incremental borrowing rates for collateralized borrowings over terms similar to those of the leases to determine the lease liability while, for finance leases, the Company uses the interest rates implicit in the leases. The initial
          measurement of ROU assets may require further adjustments for lease prepayments and initial direct costs the Company incurs. <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367056" continuedAt="Text_2320f83fe0bc45debc807c85028367057"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd184" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd185">
<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_2320f83fe0bc45debc807c85028367057"><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd185" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd186">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; Operating leases are expensed on a straight-line basis over the terms of the leases, and are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold, Selling, general and administrative</span>, or <span style="font-style: italic;">Research and development</span> expense in accordance with the use of the underlying asset. Finance lease ROU
          assets are amortized over the estimated useful life of the underlying asset; the expenses are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold</span>. Finance lease liabilities are
          subsequently remeasured by increasing the liability to reflect interest accrued during a period and decreasing the liability to reflect payments made during the period. Interest expense incurred on finance leases is included in <span style="font-style: italic;">Interest expense</span> on the consolidated statements of income.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; Cash paid for operating leases and interest paid for finance leases are included in the consolidated statement of cash flows as operating activities in <span style="font-style: italic;">Accounts payable, accrued liabilities and other</span>;
          cash paid for finance lease principal is included in <span style="font-style: italic;">Repayments of debt</span> in the financing activities section of the consolidated statement of cash flows.</span> </div>
</ix:continuation></ix:continuation>
       </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd186" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd187">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd187" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd188">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd188" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd189"><ix:nonNumeric name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="Text_7804b844c9cf46e2a9ecc78b9e0dbb2f" contextRef="c20231101to20241031" escape="true" continuedAt="Text_3b114b92096847848ea2daf5cf036d611">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd189" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd190"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d611" continuedAt="Text_3b114b92096847848ea2daf5cf036d612">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Share-Based Compensation</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd190" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd191"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d612" continuedAt="Text_3b114b92096847848ea2daf5cf036d613">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd191" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd192"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d613" continuedAt="Text_3b114b92096847848ea2daf5cf036d614">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd192" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd193"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d614" continuedAt="Text_3b114b92096847848ea2daf5cf036d615">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd193" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd194"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d615" continuedAt="Text_3b114b92096847848ea2daf5cf036d616">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd194" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd195"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d616" continuedAt="Text_3b114b92096847848ea2daf5cf036d617">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd195" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd196"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d617" continuedAt="Text_3b114b92096847848ea2daf5cf036d618">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd196" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd197"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d618" continuedAt="Text_3b114b92096847848ea2daf5cf036d619">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd197" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd198"><ix:continuation id="Text_3b114b92096847848ea2daf5cf036d619">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;">We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#8217;s common stock&#8217;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd198" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd199">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd199" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd200">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd200" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd201"><ix:nonNumeric name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="Text_3286115bcc1d475bb2afeb5857cb77b1" contextRef="c20231101to20241031" escape="true" continuedAt="Text_37eba28930ce481bb9a83b83c5dcab9c1">
<div><span style="font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd201" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd202"><ix:continuation id="Text_37eba28930ce481bb9a83b83c5dcab9c1" continuedAt="Text_37eba28930ce481bb9a83b83c5dcab9c2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Research and Development</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd202" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd203"><ix:continuation id="Text_37eba28930ce481bb9a83b83c5dcab9c2" continuedAt="Text_37eba28930ce481bb9a83b83c5dcab9c3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd203" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd204"><ix:continuation id="Text_37eba28930ce481bb9a83b83c5dcab9c3" continuedAt="Text_37eba28930ce481bb9a83b83c5dcab9c4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd204" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd205"><ix:continuation id="Text_37eba28930ce481bb9a83b83c5dcab9c4" continuedAt="Text_37eba28930ce481bb9a83b83c5dcab9c5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd205" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd206"><ix:continuation id="Text_37eba28930ce481bb9a83b83c5dcab9c5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Research and development costs are expensed as incurred and consist primarily of development efforts related to high-end process
      technologies for advanced subwavelength reticle solutions for IC and FPD photomask technologies. Research and development expenses were $<ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_e71764184a46483fa1d8df341af8864b" contextRef="c20231101to20241031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">16.6</ix:nonFraction>
      million, $<ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_30eb22e597c9443c9cdbae7edf9b989b" contextRef="c20221101to20231031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">13.7</ix:nonFraction> million, and $<ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_af8da8ab48d64119bc6deafe13c136d7" contextRef="c20211101to20221031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">18.3</ix:nonFraction>
      million for the years ended October 31, 2024, 2023 and 2022, respectively.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd206" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd207">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd207" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd208">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">49</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>
<ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd208" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd209"><ix:nonNumeric name="plab:GovernmentGrantsPolicyTextBlock" id="Text_d9ab80eb4c914d549b9d317cc07b6a49" contextRef="c20231101to20241031" escape="true" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5071">
<div><span style="font-size: 10pt;"> </span>
     </div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd209" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd210"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5071" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5072">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Government Grants</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd210" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd211"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5072" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5073">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd211" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd212"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5073" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5074">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd212" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd213"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5074" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5075">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd213" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd214"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5075" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5076">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">The <span style="font-size: 10pt;">Company receives or expects to receive in the future, various types of
          government assistance, primarily in the form of grants or refundable tax credits.&#160; Government assistance is recognized when there is reasonable assurance that: (1) the Company will comply with the relevant conditions and (2) the assistance will
          be received. Government assistance related to reimbursing fixed asset purchases, such as reimbursement grants and refundable federal investment tax credits, are recorded as a reduction to the related asset(s), which then reduces depreciation
          expense over the expected useful life of the asset on a straight-line basis. If some, or all, of the amount of government assistance becomes repayable (e.g. due to non-fulfillment of the grant conditions) or there is no longer reasonable
          assurance the amount will be received (e.g. due to additional interpretive guidance) then the adjustment is accounted for prospectively as a change in accounting estimate. The effect of the change in estimate is recognized in the period in which
          management concludes that it is no longer reasonably assured that all of the grant conditions will be met. A corresponding financial liability is recognized for the amount of the repayment, if any</span>.</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd214" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd215"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5076" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5077">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd215" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd216"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5077" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5078">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">Company accounts for funds the Company receives from government grants by either reducing the costs of the
        assets (if the grant relates to capital expenditures) or expenses which could be </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Cost of goods sold, Selling, general and administrative, or Research and development expenses</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income.&#160; If the funds the Company receives cannot be attributed to specific assets or expenses, they would be recognized as other income, and included in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Interest income and other income, net</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income. Funds the Company receive from government grants are classified in
        the Company&#8217;s consolidated statements of cash flows as either </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash
        provided by operating activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash provided by investing activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">, in accordance with how the Company expends the funds. When a grant is received before conditions of the grant have been met, the
        grant is recorded in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Accrued liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Other liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the Consolidated Balance Sheets.&#160; For the years ended October 31, 2024, October 31, 2023, and October 31, 2022, grants recorded in the Company&#8217;s Consolidated Financial Statements were not material.</span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd216" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd217"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5078" continuedAt="Text_ddf22bdad52a4a54990b13df2883c5079">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd217" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd218"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c5079" continuedAt="Text_ddf22bdad52a4a54990b13df2883c50710">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd218" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd219"><ix:continuation id="Text_ddf22bdad52a4a54990b13df2883c50710">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0);">The </span><span style="color: rgb(0, 0, 0);">Company expects to receive refundable
        federal investment tax credits through the CHIPS Act in connection with ongoing expansion projects. As of October 31, 2024, the Company has reduced property, plant and equipment, net by $<ix:nonFraction name="plab:IncreaseDecreaseInPropertyAndEquipmentNet" id="Fact_bd13222407f84aa4bc755f8712bd3dfd" contextRef="c20231101to20241031" unitRef="U001" decimals="-5" scale="6" sign="-" format="ixt:num-dot-decimal">5.0</ix:nonFraction> million as a result of expected refundable tax credits in connection with the CHIPS Act<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">. The Company has also applied for direct capital grants through the CHIPS Act in connection with proposed projects.<br/>
        </span></span></div>
</ix:continuation></ix:continuation><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd219" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd220"><ix:nonNumeric name="us-gaap:IncomeTaxPolicyTextBlock" id="Text_f012e77e19bb4b42a2853747a2123a52" contextRef="c20231101to20241031" escape="true" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c811">
<div>
     <span style="font-size: 10pt;"> <br/>
    </span> <span style="font-size: 10pt;"> </span> </div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd220" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd221"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c811" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c812">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Income Taxes</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd221" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd222"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c812" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c813">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd222" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd223"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c813" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c814">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd223" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd224"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c814" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c815">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd224" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd225"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c815" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c816">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The income tax provision is computed on the basis of the income or loss before income taxes for each entity in its respective tax
      jurisdiction. Deferred income taxes reflect the tax effects of differences between the carrying amounts of assets and liabilities for financial reporting purposes and their amounts used for income tax purposes, as well as the tax effects of net
      operating losses and tax credit carryforwards. We employ judgment and make assumptions when establishing valuation allowances for deferred income tax assets, if their realization is not deemed to be more likely than not, by considering future market
      growth, operating forecasts, future taxable income, and the mix of earnings among the tax jurisdictions in which we operate. Accordingly, income taxes charged against earnings may have been impacted by changes in the valuation allowances. We are
      eligible for investment tax credits in U.S. and non-U.S. tax jurisdictions. We account for investment tax credits under the &#8220;flow-through&#8221; method of accounting. As permitted in ASC 740 &#8220;Income Taxes&#8221;, under the flow-through method of accounting, the
      tax benefit from an investment tax credit is recorded as a reduction of income taxes in the period in which the credit is generated.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd225" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd226"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c816" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c817">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd226" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd227"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c817" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c818">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd227" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd228"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c818" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c819">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd228" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd229"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c819" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c8110">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consider income taxes in each of the tax jurisdictions in which we operate in order to determine our effective income tax rate.
      Our current income tax expense is thus identified, and temporary differences resulting from differing treatments of items for tax and financial reporting purposes are assessed. These differences result in deferred tax assets, which are presented on
      our consolidated balance sheets, and deferred tax liabilities, which are included in <span style="font-style: italic;">Other liabilities</span> on our consolidated balance sheets.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd229" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd230"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c8110" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c8111">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd230" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd231"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c8111" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c8112">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd231" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd232"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c8112" continuedAt="Text_dba44d9d3a5d4a68b354c0c185197c8113">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd232" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd233"><ix:continuation id="Text_dba44d9d3a5d4a68b354c0c185197c8113">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;We account for uncertain tax positions by recording a liability for unrecognized tax benefits
        resulting from uncertain tax positions taken, or expected to be taken, in our tax returns. We include any applicable interest and penalties related to uncertain tax positions in the liability and in our income tax provision.<br/>
      </span> </div>
</ix:continuation></ix:continuation><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd233" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd234">
<div>
     <span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <div><ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd234" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd235">
<div><br/></div>
</ix:continuation>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">50</span></div>

        <div class="BRPFPageBreak" style="page-break-after:always;">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>

    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd235" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd236"><ix:nonNumeric name="us-gaap:EarningsPerSharePolicyTextBlock" id="Text_bddc8012e6274051bac735e2108638f5" contextRef="c20231101to20241031" escape="true" continuedAt="Text_24419786abe5427daa254e8fa2772ecd1">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd236" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd237"><ix:continuation id="Text_24419786abe5427daa254e8fa2772ecd1" continuedAt="Text_24419786abe5427daa254e8fa2772ecd2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Earnings Per Share</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd237" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd238"><ix:continuation id="Text_24419786abe5427daa254e8fa2772ecd2" continuedAt="Text_24419786abe5427daa254e8fa2772ecd3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd238" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd239"><ix:continuation id="Text_24419786abe5427daa254e8fa2772ecd3" continuedAt="Text_24419786abe5427daa254e8fa2772ecd4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd239" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd240"><ix:continuation id="Text_24419786abe5427daa254e8fa2772ecd4" continuedAt="Text_24419786abe5427daa254e8fa2772ecd5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd240" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd241"><ix:continuation id="Text_24419786abe5427daa254e8fa2772ecd5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;Basic earnings per share (&#8220;EPS&#8221;) attributed to Photronics shareholders for both basic and diluted is
        computed independently for each period presented and is based on the weighted-average number of common shares outstanding for the period, excluding any dilutive common share equivalents. Diluted EPS reflects the potential dilution that could occur
        if certain share-based payment awards were exercised or earned.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd241" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd242">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd242" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd243">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd243" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd244"><ix:nonNumeric name="us-gaap:ConsolidationVariableInterestEntityPolicy" id="Text_0927dd91f28145a6b82f3b189b8c4932" contextRef="c20231101to20241031" escape="true" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d1">
<div><span style="font-size: 10pt;"> </span></div>
</ix:nonNumeric></ix:continuation><!--PROfilePageNumberReset%Num%49%%%-->
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd244" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd245"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d1" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Variable Interest Entities</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd245" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd246"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d2" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d3">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd246" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd247"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d3" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d4">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd247" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd248"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d4" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d5">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd248" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd249"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d5" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d6">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We account for the investments the Company makes in certain legal entities in which equity investors do not have: 1) sufficient
      equity at risk for the legal entity to finance its activities without additional subordinated financial support or, 2) as a group, the holders of the equity investment at risk do not have either the power, through voting or similar rights, to direct
      the activities of the legal entity that most significantly impact the entity&#8217;s economic performance or, 3) the obligation to absorb the expected losses of the legal entity or the right to receive expected residual returns of the legal entity as
      &#8220;variable interest entities&#8221;, or &#8220;VIEs&#8221;.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd249" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd250"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d6" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d7">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd250" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd251"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d7" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d8">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd251" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd252"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d8" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d9">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd252" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd253"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d9" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d10">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consolidate the results of any such entity in which the Company has determined that the Company has a controlling financial
      interest. The Company would have a &#8220;controlling financial interest&#8221; (and thus be considered the &#8220;primary beneficiary&#8221; of the entity) in such an entity when the Company has both the power to direct the activities that most significantly affect the
      VIE&#8217;s economic performance and the obligation to absorb the losses of, or right to receive the benefits from, the VIE that could be potentially significant to the VIE. On a quarterly basis, the Company reassesses whether the Company has a controlling
      financial interest in any investments the Company has in these entities.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd253" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd254"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d10" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d11">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd254" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd255"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d11" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d12">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd255" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd256"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d12" continuedAt="Text_6c2ec9a059614a7f9e264d6fa32e483d13">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd256" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd257"><ix:continuation id="Text_6c2ec9a059614a7f9e264d6fa32e483d13">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We would account for investments the Company makes in VIEs in which the Company has determined that the Company does not have a
      controlling financial interest but have a significant influence over, and hold at least a <ix:nonFraction name="us-gaap:VariableInterestEntityOwnershipPercentage" id="Fact_1b219446f2294a27bcf989ce380f8a31" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember" unitRef="U005" decimals="2" scale="-2" format="ixt-sec:numwordsen">twenty </ix:nonFraction>percent ownership interest in, using the
      equity method. An investment not meeting the parameters to be accounted for under the equity method would be accounted for using the cost method, unless the investment had a readily determinable fair value, at which value it would then be reported.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd257" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd258">
<div><span style="font-size: 10pt;">
    </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd258" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd259">
<div><span style="font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd259" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd260">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd260" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd261">
<div style="display:none;"><br/></div>
<div style="font-size: 10pt; text-indent: 18pt;"><span style="font-weight: bold; font-style: italic;">&#160; <span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="Text_fb673bbf6ff04c398160bf6e1869201f" contextRef="c20231101to20241031" escape="true" continuedAt="Text_ee11a826df9843cf8e8653aea367be101"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; font-weight: bold; font-size: 10pt;">Recent Accounting Pronouncements</span></ix:nonNumeric><br/>
        </span></span></div>
</ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd261" continuedAt="Text_4dca17898ecd41bfbd2316819039f3bd262"><ix:continuation id="Text_ee11a826df9843cf8e8653aea367be101" continuedAt="Text_ee11a826df9843cf8e8653aea367be102">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4dca17898ecd41bfbd2316819039f3bd262"><ix:continuation id="Text_ee11a826df9843cf8e8653aea367be102">
<div><span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">&#160; In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to
          Income Tax Disclosures&#8221;, to enhance the transparency and decision usefulness of income tax disclosures. The amendments in this Update related to the rate reconciliation and income taxes paid disclosures to improve the transparency of income tax
          disclosures by requiring (1) consistent categories and greater disaggregation of information in the rate reconciliation and (2) income taxes paid disaggregated by jurisdiction. The amendments allow investors to better assess, in their capital
          allocation decisions, how an entity&#8217;s worldwide operations and related tax risks and tax planning and operational opportunities affect its income tax rate and prospects for future cash flows. The guidance in this Update will be effective for
          Photronics in its fiscal year 2026 Form 10-K, with early application of the amendments allowed. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"> In November 2023, the FASB issued ASU 2023-07, &#8220;Segment Reporting (Topic 280): Improvements
          to Reportable Segment Disclosures&#8221;, which improves reportable segment disclosure requirements, primarily through enhanced disclosures about significant segment expenses. The guidance in this Update is effective for Photronics in its fiscal year
          2025 Form 10-K, with early adoption permitted. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> </div>
</ix:continuation></ix:continuation>
<div>

    <span style="font-size: 10pt;">
    </span></div>

    <div style="font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

    <div><span style="font-size: 10pt;"> </span></div>
 </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div>
      <ix:nonNumeric name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="Text_f6b22b523d134d49934717d1faec9324" contextRef="c20231101to20241031" escape="true" continuedAt="Text_c222560287c940a18ae96ba8031a77a41">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;">NOTE 2 &#8211; ACCOUNTS RECEIVABLE</div>
</ix:nonNumeric>
      <ix:continuation id="Text_c222560287c940a18ae96ba8031a77a41" continuedAt="Text_c222560287c940a18ae96ba8031a77a42">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation>

      <ix:nonNumeric name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="Text_9680cedc4a8542f3862ca62f62f75da9" contextRef="c20231101to20241031" escape="true" continuedAt="Text_32fb918c29464aad873e363c3347063c1"><ix:continuation id="Text_c222560287c940a18ae96ba8031a77a42" continuedAt="Text_c222560287c940a18ae96ba8031a77a43">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">The

















































          components of&#160;</span><span style="font-style: italic; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">Accounts Receivable&#160;</span><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">at the
          balance sheet dates are presented below.</span></div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_32fb918c29464aad873e363c3347063c1" continuedAt="Text_32fb918c29464aad873e363c3347063c2"><ix:continuation id="Text_c222560287c940a18ae96ba8031a77a43" continuedAt="Text_c222560287c940a18ae96ba8031a77a44">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_32fb918c29464aad873e363c3347063c2"><ix:continuation id="Text_c222560287c940a18ae96ba8031a77a44">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: middle; font-family: 'Times New Roman'; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"> October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';">Accounts Receivable</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" id="Fact_9879b02d014f4fbd8607390bdae2e6ae" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">172,741</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" id="Fact_b431a6dd38134acead2ee79ce22cf8b0" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">171,433</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
              <div style="font-family: 'Times New Roman';">Unbilled Receivable</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:UnbilledReceivablesCurrent" id="Fact_840fe3ac6bed49b0aab07a164c6cb00d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">29,215</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:UnbilledReceivablesCurrent" id="Fact_63c3cae448b24b58b45af5aff6b1f867" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,593</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman';">Allowance for Credit Losses</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_08a8e14562d24a059870bf08089c6a7d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,126</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_e2303f57ce0e43989a1161533b9664dd" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,099</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; font-family: 'Times New Roman'; width: 76%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_47590b11b9f14cfa815a7d66101258b4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">200,830</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_9453c9b3e70141e8b2374c58ba621ffc" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">194,927</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <div> <br/>
      </div>

      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">51</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:OtherCurrentAssetsTextBlock" id="Text_f38c6442671e40a79989e6091057515d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce061">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 3 - OTHER CURRENT ASSETS</div>
</ix:nonNumeric>
    <ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce061" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce062">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock" id="Text_95a83c466cad48d893006ca46849ccdf" contextRef="c20231101to20241031" escape="true" continuedAt="Text_6997d5f0778c46798b7fc9fef01e0f581"><ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce062" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce063">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other current assets</span> at
      the balance sheet dates.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_6997d5f0778c46798b7fc9fef01e0f581" continuedAt="Text_6997d5f0778c46798b7fc9fef01e0f582"><ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce063" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce064">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_6997d5f0778c46798b7fc9fef01e0f582" continuedAt="Text_6997d5f0778c46798b7fc9fef01e0f583"><ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce064" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce065">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"> </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Contract assets</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" id="Fact_11557859a71e43fd8f151f53d36eec2b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,532</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" id="Fact_cfe290a51009442e8c0ddfb1d709ceed" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,984</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid expenses</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" id="Fact_e501f49e427e432c81ddd3e5a44d23f9" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,770</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" id="Fact_e4a0566a908f45989acf4d0bfd583ed2" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,031</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Recoverable value added taxes</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ValueAddedTaxReceivableCurrent" id="Fact_40700ca5874d4bfb93d8db42a5a54057" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,684</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ValueAddedTaxReceivableCurrent" id="Fact_51446679b72e4c38b859958c4c056ed5" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,312</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid and refundable income taxes</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:PrepaidAndRefundableIncomeTaxes" id="Fact_6a72e4dd73d04dbe9b7382fb4e654dea" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,875</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:PrepaidAndRefundableIncomeTaxes" id="Fact_328169d1e1ad4f58bc3eedea0c5d47b9" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,489</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other<sup> (1)</sup><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsMiscellaneousCurrent" id="Fact_7589dd8b6d604afeb7580519af0b90dd" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,175</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsMiscellaneousCurrent" id="Fact_50ad7cbf76a84c49b0bd53e1c9116272" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,537</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_71e9ef6d24fd467f83663e3fc471ef6c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,036</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_8fc2e0c777834034a889c73ee810b98f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">28,353</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_6997d5f0778c46798b7fc9fef01e0f583" continuedAt="Text_6997d5f0778c46798b7fc9fef01e0f584"><ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce065" continuedAt="Text_1c4cc9b906024ff499ed67227a42ce066">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_1c4cc9b906024ff499ed67227a42ce066"><ix:continuation id="Text_6997d5f0778c46798b7fc9fef01e0f584">
<div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000; text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
            </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000;"><ix:footnote id="Foot_82f98204b90545f9a2190cdf977c581e" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">The Company expects to receive refundable federal investment tax
                credits of $<ix:nonFraction name="plab:FederalInvestmentTaxCreditsRefundReceivableCurrent" id="Fact_68c73e4f75ad4a6cba5a902e86741a7d" contextRef="c20241031" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">5</ix:nonFraction> million through CHIPS Act in connection with the Company&#8217;s ongoing expansion projects.</ix:footnote></div>
            </td>

  </tr>


</table>

      <div> <br/>
      </div>

    </div>
</ix:continuation></ix:continuation>
  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div>
      <div>
        <ix:nonNumeric name="us-gaap:InventoryDisclosureTextBlock" id="Text_0f5e2f1f19d94a388b3f730bb07f0a4e" contextRef="c20231101to20241031" escape="true" continuedAt="Text_4a5cbfaba25f421eb76ad3db701e45cc1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 4 - INVENTORIES</div>
</ix:nonNumeric>
        <ix:continuation id="Text_4a5cbfaba25f421eb76ad3db701e45cc1" continuedAt="Text_4a5cbfaba25f421eb76ad3db701e45cc2">
<div><br/>
        </div>
</ix:continuation>

        <ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="Text_ca7e8388b9384589994a86f5a1899020" contextRef="c20231101to20241031" escape="true" continuedAt="Text_18af33c57a1640289629b96a676ca6151"><ix:continuation id="Text_4a5cbfaba25f421eb76ad3db701e45cc2" continuedAt="Text_4a5cbfaba25f421eb76ad3db701e45cc3">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The components of&#160;<span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Inventories&#160;</span>at the balance sheet dates are presented below.</div>
</ix:continuation></ix:nonNumeric>
        <ix:continuation id="Text_18af33c57a1640289629b96a676ca6151" continuedAt="Text_18af33c57a1640289629b96a676ca6152"><ix:continuation id="Text_4a5cbfaba25f421eb76ad3db701e45cc3" continuedAt="Text_4a5cbfaba25f421eb76ad3db701e45cc4">
<div><br/>
        </div>
</ix:continuation></ix:continuation>
      </div>

      <ix:continuation id="Text_18af33c57a1640289629b96a676ca6152"><ix:continuation id="Text_4a5cbfaba25f421eb76ad3db701e45cc4">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsNetOfReserves" id="Fact_5c09d874353449ebb565310da9fddeca" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,128</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsNetOfReserves" id="Fact_2c556eae548b4b39917ee6c668d14d08" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">48,948</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Work in process</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" id="Fact_ba22298bca884eeb861b80c48cb54567" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">398</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" id="Fact_6e787b7c672d4c4fa9f048ef14333a49" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,010</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" id="Fact_333c47c5a50043a99cb09766607f6441" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" id="Fact_7a61892d79584d4b97d04fdeb30a7e49" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 4px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_cd6c61bffe6d47c9ab1c7fa275dfaf1f" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,527</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_24b277784a34473384c747c726c8c37b" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">49,963</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <div> <br/>
      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="Text_aac2d10b64e7421cb47bb17f917741d4" contextRef="c20231101to20241031" escape="true" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff1">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 5 - PROPERTY, PLANT AND EQUIPMENT, NET</div>
</ix:nonNumeric>
    <ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff1" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff2">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="Text_79b6ecb62fff4c669ded01e969154c2d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_4d2157fa03364b3581bb17351e1cfe7d1"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff2" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff3">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-style: italic;">Property, plant and equipment, net</span> at the balance
      sheet dates.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_4d2157fa03364b3581bb17351e1cfe7d1" continuedAt="Text_4d2157fa03364b3581bb17351e1cfe7d2"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff3" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff4">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4d2157fa03364b3581bb17351e1cfe7d2"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff4" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff5">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Land</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_c5c7dd179538454db50652fbd3638124" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_LandMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,419</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_5d284d6048594976a090f50e270ab7a1" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_LandMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,378</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Buildings and improvements</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_b60bb62112ad499e8217356968ac983f" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">188,756</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_af7f0d6c57814329b1f539c6e1cc4def" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">185,850</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_6acef9a31564442a947960775ac0328e" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,990,610</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_f4f4c5d5b9b840e69a074475575efca2" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,922,041</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Leasehold improvements</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_eca98976132f4ef49674b35d431cb66f" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,268</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_d8bc5eb0c0474be0885b50dd7c53dc56" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,894</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Furniture, fixtures, and office equipment</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_83040e357d9f47bb83418639f12666bf" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,091</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_0e0480f426f64b509f38428ba3a555f2" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,856</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Construction in progress</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_97c1b935a6f64e81a0bd6f48cadb095b" contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">91,213</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_8a61b43c493848a6b702fb2c9dcc8a59" contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,434</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_aeeb7a97a65a43d3bbf8be0c634f4f6f" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,319,357</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_4d53153a111b4ba58b5b7a0b6a42cc8a" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,209,453</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accumulated depreciation and amortization</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_55ae85eeb0834e9f81230e57f8c148cd" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,574,100</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_a526456009e14a6097e700c7315f82ba" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,500,209</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_3288d7c873734aa6a97773463afd6dde" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">745,257</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_f8288b040b64427eb6ed525e9b024571" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">709,244</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff5" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff6">
<div><br/>
    </div>
</ix:continuation>
    <div>
      <ix:nonNumeric name="plab:FinanceLeaseRightOfUseAssetsTableTextBlock" id="Text_30c0ca2962524406b31571acd9cb8cd9" contextRef="c20231101to20241031" escape="true" continuedAt="Text_3f4fdc9bdd7448b582c042848c6885471"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff6" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff7">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Information on ROU assets resulting from finance leases, at the balance sheet dates, is presented below.</div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_3f4fdc9bdd7448b582c042848c6885471" continuedAt="Text_3f4fdc9bdd7448b582c042848c6885472"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff7" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff8">
<div><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_3f4fdc9bdd7448b582c042848c6885472"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff8" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff9">
<table cellspacing="0" cellpadding="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" id="Fact_f6699e1fa7f54d46b5f615fc3af01eea" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,815</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" id="Fact_2bef016c559a41a4b10275741ca2bc4f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,820</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Accumulated amortization</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization" id="Fact_7fc4bb216dda4f90844c1cace5e7d97f" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,522</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization" id="Fact_e55ccba1c4594a00961c11a132591f50" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,655</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAsset" id="Fact_ea7283a7343941f9b6cb5d858df73db8" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,293</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAsset" id="Fact_8858d5eeb0734663a1d0490bb49a8872" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,165</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff9" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff10">
<div><br/>
      </div>
</ix:continuation>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">52</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <div>
        <ix:nonNumeric name="plab:DepreciationAndAmortizationExpenseTableTextBlock" id="Text_68ee23a8e1034c4cb51cec9b2875bec9" contextRef="c20231101to20241031" escape="true" continuedAt="Text_272beeb998c7405f8e4bc6bb43f370bd1"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff10" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff11">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following table presents depreciation expense (including the amortization of ROU assets) related to property, plant and
          equipment incurred during the reporting periods.</div>
</ix:continuation></ix:nonNumeric>
        <ix:continuation id="Text_272beeb998c7405f8e4bc6bb43f370bd1" continuedAt="Text_272beeb998c7405f8e4bc6bb43f370bd2"><ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff11" continuedAt="Text_b53fa6ce96bc47d2bc9f03bb082e0bff12">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_b53fa6ce96bc47d2bc9f03bb082e0bff12"><ix:continuation id="Text_272beeb998c7405f8e4bc6bb43f370bd2">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table cellspacing="0" cellpadding="0" style="width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;"><br/>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" rowspan="1" colspan="10">
                  <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center;"><span style="font-weight: bold;">2024</span></div>
                </td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2023</div>
                </td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2022</div>
                </td>

    <td valign="bottom" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
                  <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization expense</div>
                </td>

    <td valign="bottom" style="font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">$</td>

    <td valign="bottom" style="font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization" id="Fact_3022e28d00a44ebd916a492947aa66c2" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">82,433</ix:nonFraction></td>

    <td valign="bottom" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1"><span style="font-size: 10pt;">$</span></td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><span style="font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization" id="Fact_bbf6b5e1ce004ca985bb84849242778c" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">80,472</ix:nonFraction></span></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1"><span style="font-size: 10pt;">$</span></td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><span style="font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization" id="Fact_cef5644b270944c6b21df77eae48e291" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">79,971</ix:nonFraction></span></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
          </div>
</ix:continuation></ix:continuation>
      </div>

       </div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);"> <ix:nonNumeric name="us-gaap:VariableInterestEntityDisclosureTextBlock" id="Text_bb24bf06488d40f08b4657882269e9d1" contextRef="c20231101to20241031" escape="true" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742721">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>
</ix:nonNumeric>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742721" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742722">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 6 - PDMCX JOINT VENTURE</div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742722" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742723">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742723" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742724">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742724" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742725">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742725" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742726">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">In January 2018, Photronics<span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">,</span> Inc., through its wholly owned<span style="color: rgb(0, 0, 0);"> Photronics</span> Singapore PTE. LTD. subsidiary
        (hereinafter, within this Note &#8220;we&#8221;, &#8220;Photronics&#8221;, <span style="color: rgb(0, 0, 0);">&#8220;</span>us<span style="color: rgb(0, 0, 0);">&#8221;,</span> or &#8220;our&#8221;), and DNP, through its wholly owned subsidiary &#8220;DNP Asia Pacific PTE, Ltd.&#8221;, entered into a joint
        venture under which DNP obtained a </span><span style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableInterestEntityOwnershipPercentage" id="Fact_3f5cc597dd3c4e0fbf52d108f0109408" contextRef="c20180101to20180131_ConsolidatedEntitiesAxis_VariableInterestEntityNotPrimaryBeneficiaryMember" unitRef="U005" decimals="4" scale="-2" format="ixt:num-dot-decimal">49.99</ix:nonFraction>%<span style="color: rgb(0, 0, 0);"> interest in the<span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> Company&#8217;s</span> IC business in Xiamen, China. </span>The
        joint venture, which the Company refers to as &#8220;PDMCX&#8221;, was established to develop and manufacture photomasks for semiconductors. The Company entered into this joint venture to enable the Company to compete more effectively for the merchant
        photomask business in China, and to benefit from the additional resources and investment that DNP provides to enable the Company to offer advanced-process technology to our customers<span style="color: rgb(0, 0, 0);">.</span></span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742726" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742727">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742727" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742728">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742728" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a742729">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a742729" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427210">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">In 2020, in combination with local financing obtained by PDMCX, Photronics and DNP fulfilled their investment obligations under the PDMCX operating
      agreement (<span style="color: rgb(0, 0, 0);">&#8220;</span>the Agreement<span style="color: rgb(0, 0, 0);">&#8221;</span>). As discussed in Note 8, liens were granted to the local financing entity on property, plant, and equipment and were paid off during
      fiscal year 2023 and there was <ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligations" id="Fact_26ec1aec60d449d6a2923a200381fa1a" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt-sec:numwordsen">no</ix:nonFraction> remaining debt at October 31, 2023.</div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427210" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427211">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427211" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427212">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427212" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427213">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427213" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427214">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Under the Agreement, should either <span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">Photronics&#8217; or DNP&#8217;s</span> ownership interest fall below <ix:nonFraction name="us-gaap:VariableInterestEntityOwnershipPercentage" id="Fact_4c0009846461414ca157c603b23f3fbe" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">20.0</ix:nonFraction>%
      for a period of more than <span style="-sec-ix-hidden:Fact_549b7473dfe1448fa5a93e38f911cb8c">six</span> consecutive months, such party (an &#8220;exiting party&#8221;) has the option to sell to the other party, and the other
      party has the option to purchase from such exiting party, the exiting party&#8217;s remaining ownership interest. In either case, the sales of ownership interests would be at the exiting party&#8217;s ownership percentage of the joint venture&#8217;s net book value,
      with closing to take place within <span style="-sec-ix-hidden:Fact_19a45af3a76e4d89938605be47b11523">three</span> business days of obtaining required approvals and clearance.</div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427214" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427215">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427215" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427216">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427216" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427217"><ix:nonNumeric name="srt:ScheduleOfCondensedIncomeStatementTableTextBlock" id="Text_7097890e22fb4fe69da3ce01df5d3da9" contextRef="c20231101to20241031" escape="true" continuedAt="Text_ca4734ffffe24d649495e91caed78b691">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427217" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427218"><ix:continuation id="Text_ca4734ffffe24d649495e91caed78b691" continuedAt="Text_ca4734ffffe24d649495e91caed78b692">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">The following table presents net income the Company recorded from the operations of PDMCX during the reporting periods. </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427218" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427219"><ix:continuation id="Text_ca4734ffffe24d649495e91caed78b692" continuedAt="Text_ca4734ffffe24d649495e91caed78b693">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427219" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427220"><ix:continuation id="Text_ca4734ffffe24d649495e91caed78b693" continuedAt="Text_ca4734ffffe24d649495e91caed78b694">
<div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427220" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427221"><ix:continuation id="Text_ca4734ffffe24d649495e91caed78b694" continuedAt="Text_ca4734ffffe24d649495e91caed78b695">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" rowspan="1" style="vertical-align: top; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2022</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 64%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income from PDMCX</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" id="Fact_63a8e5b75ad046f78923c391da057030" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,074</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" id="Fact_5038c060cdc44b119ed15d7af43b7894" contextRef="c20221101to20231031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">25,098</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" id="Fact_edb2070236a341fea40b5a4da1984b03" contextRef="c20211101to20221031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,714</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    </div>

    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427221" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427222"><ix:continuation id="Text_ca4734ffffe24d649495e91caed78b695">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427222" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427223">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427223" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427224"><ix:nonNumeric name="plab:ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" id="Text_23cc361869234dacb413d2743736827d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_5bb9d77b26884a1599eba8cf043a3bc51">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427224" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427225"><ix:continuation id="Text_5bb9d77b26884a1599eba8cf043a3bc51">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As required by the guidance in ASC Topic 810 - &#8220;<span style="font-style: italic;">Consolidation</span>&#8221;, the Company evaluated&#160; the Company&#8217;s involvement
      in PDMCX for the purpose of determining whether the Company should consolidate its results in the Company&#8217;s financial statements. The initial step of the Company&#8217;s evaluation was to determine whether PDMCX was a VIE. Due to its lack of sufficient
      equity at risk to finance its activities without additional subordinated financial support, the Company determined that it is a VIE. Having made this determination, the Company then assessed whether the Company was the primary beneficiary of the VIE,
      and concluded that the Company was the primary beneficiary during the current and prior years reporting periods; thus, as required, the PDMCX financial results have been consolidated with Photronics. The Company&#8217;s conclusion was based on the fact
      that the Company held a controlling financial interest in PDMCX (which resulted from the Company&#8217;s having the power to direct the activities that most significantly impacted its economic performance) and had both the obligation to absorb losses and
      the right to receive benefits that could potentially be significant to PDMCX. The Company&#8217;s conclusion that the Company had the power to direct the activities that most significantly affected the economic performance of PDMCX during the current and
      prior year periods were based on the Company&#8217;s right to appoint the majority of its Board of Directors, which has, among others, the powers to manage the business (through its rights to appoint and evaluate PDMCX&#8217;s management), incur indebtedness,
      enter into agreements and commitments, and acquire and dispose of PDMCX&#8217;s assets. In addition, as a result of the <ix:nonFraction name="us-gaap:VariableInterestEntityOwnershipPercentage" id="Fact_3bcb979d55fc4048a672c788eb232c54" contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U005" decimals="4" scale="-2" format="ixt:num-dot-decimal">50.01</ix:nonFraction>% variable interest
      the Company held during the current and prior year periods, the Company had the obligation to absorb losses, and the right to receive benefits, that could potentially be significant to PDMCX.</div>
</ix:continuation></ix:continuation><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427225" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427226">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span>
     <span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">53</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427226" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427227">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfVariableInterestEntitiesTextBlock" id="Text_de377209e0664cd1b4d1d84ff84ac4ba" contextRef="c20231101to20241031" escape="true" continuedAt="Text_58ef75de725e4552ae9b89ad26997a781"><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427227" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427228">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The following table presents the carrying amounts of PDMCX assets and liabilities included in the Company&#8217;s consolidated balance sheets. General
      creditors of PDMCX do not have recourse to the assets of Photronics (other than the net assets of PDMCX); therefore, the Company&#8217;s maximum exposure to loss from PDMCX is the Company&#8217;s interest in the carrying amount of the net assets of the joint
      venture.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_58ef75de725e4552ae9b89ad26997a781" continuedAt="Text_58ef75de725e4552ae9b89ad26997a782"><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427228" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427229">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_58ef75de725e4552ae9b89ad26997a782" continuedAt="Text_58ef75de725e4552ae9b89ad26997a783"><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427229" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427230">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_58ef75de725e4552ae9b89ad26997a783" continuedAt="Text_58ef75de725e4552ae9b89ad26997a784"><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427230" continuedAt="Text_4d5d725f1e3f4a3d941d2fc249a7427231">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_58ef75de725e4552ae9b89ad26997a784"><ix:continuation id="Text_4d5d725f1e3f4a3d941d2fc249a7427231">
<table cellspacing="0" cellpadding="0" border="0" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> <span style="font-size: 10pt;"><br/>
            </span></td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="6">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="6">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; text-indent: -9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; Amount</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current assets</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_892d5c7737b74b959385ce757877eea8" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">174,059</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_3ff6f7e1b5e94b24a1a9126651038c66" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">87,047</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_7687a4d2277a46cda9dc7cb9106df056" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">135,960</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_05ab3cbc7e424c50ac3b844ba9807a1e" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">67,994</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent assets</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_81210c1d0bca43a48bd9a3247494ff2b" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">151,039</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_b8ae545e96ca4f57a6ee6c8d04548be5" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">75,535</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_bad781beab2543fe8417e853b66e8bd3" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">136,334</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_016bd8554961454db8313855ea00bcc7" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">68,181</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total assets</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_12ab2b59c5a4414e902a398d79ce92f8" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">325,098</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_050a84ebab5748bbbbbc151cc2514172" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">162,582</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_1dd22fcaab0e415c8b2651cc2004bda7" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">272,294</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_66c1042a74224fdbbcf7af54692f94d8" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">136,175</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current liabilities</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_0a1da626746a4317af273f821fdebcf9" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">40,691</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_7ef8b9cb467f4dc1bdb2928ccf51ba7e" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,350</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_6bc9c1d86cb34ee2a332477267143138" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,305</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_61c9c1e5a0a14256823514dd4f9bef36" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,156</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent liabilities</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_27592e35357446e1b1e823b17ce7f89a" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,320</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_4032ed120d6f4dfca6b4102a48f8c186" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,660</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_64a31fb3262643f4aef36600e0e49826" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,873</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_55a8a96d8bf64fb38b2ce9c8b8e68e23" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">937</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_47491dc8b2af4837a25ed11c2675aa7a" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">44,011</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_eebc8b59c1754dda92f5bf37cc80f2a5" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,010</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_550d380b52944ee7b418752a0952e12b" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,178</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_3298a5a5b942454aaf66d28bbb2ef588" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,093</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net assets</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_642a3204cdba463d89e8d705c6ad3775" contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">281,087</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_36144bfcf637497186304d7bffe183a8" contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">140,572</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_6b0ab38a58e34e49ad4ebe6ee26bff78" contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">234,116</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_9cf7ddb24ff443bb9207a24f9a7f86c3" contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">117,082</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
<div>

    <span style="font-family: 'Times New Roman'; font-size: 10pt;">
    </span></div>

    <div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

    <div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
 </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" id="Text_5a4c3e99d11f44149159467114e9bd9f" contextRef="c20231101to20241031" escape="true" continuedAt="Text_ab4f94e8c5dc4e309bc186994f819ce81">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 7 - ACCRUED LIABILITIES</div>
</ix:nonNumeric>
    <ix:continuation id="Text_ab4f94e8c5dc4e309bc186994f819ce81" continuedAt="Text_ab4f94e8c5dc4e309bc186994f819ce82">
<div><br/>
    </div>
</ix:continuation>

    <div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:nonNumeric name="us-gaap:OtherCurrentLiabilitiesTableTextBlock" id="Text_c3e80fc248f3419eb6ed5061687dee30" contextRef="c20231101to20241031" escape="true" continuedAt="Text_047e6f06d4d34e149aeede87b33cf2ac1"><ix:continuation id="Text_ab4f94e8c5dc4e309bc186994f819ce82" continuedAt="Text_ab4f94e8c5dc4e309bc186994f819ce83">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt; text-align: left; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Presented



















        below are the components of <span style="font-style: italic;">Accrued liabilities</span> at the balance sheet dates.<br/>
      </div>
</ix:continuation></ix:nonNumeric>
    </div>

    <ix:continuation id="Text_047e6f06d4d34e149aeede87b33cf2ac1" continuedAt="Text_047e6f06d4d34e149aeede87b33cf2ac2"><ix:continuation id="Text_ab4f94e8c5dc4e309bc186994f819ce83" continuedAt="Text_ab4f94e8c5dc4e309bc186994f819ce84">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_047e6f06d4d34e149aeede87b33cf2ac2"><ix:continuation id="Text_ab4f94e8c5dc4e309bc186994f819ce84">
<table cellspacing="0" cellpadding="0" border="0" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Compensation related expenses</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" id="Fact_fba43ae151514dd6900a6197164e427b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,188</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" id="Fact_e46bcecdac30418889da5149ebd557fa" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">37,218</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income taxes</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" id="Fact_c18cda3066e84b63ab810a91bbd087dc" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,200</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" id="Fact_78a403e0f9f04c75a6d0539f55328a87" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,080</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Contract liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_73e4148d388f49b0920c949f914d1f99" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,375</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_8b3b8a246d204021a8ce83a6e1d77e55" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,965</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;" rowspan="1">Value added and other taxes <br/>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent" id="Fact_e56b635ea96b48e6983fb256bd0f77c4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,837</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent" id="Fact_8af0a57ddf2d44fba7754c0f31b79357" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,523</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant, and equipment</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedPropertyPlantAndEquipmentCurrent" id="Fact_88684bbb47b9447c816330cee87fca5c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,670</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedPropertyPlantAndEquipmentCurrent" id="Fact_5cc114783dc34dac97286a5521138035" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,624</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Operating leases<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedOperatingLeasesCurrent" id="Fact_e524d232bca840368b83762794b770b1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,925</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedOperatingLeasesCurrent" id="Fact_7b8c0c095da1483cb1a9d1bc3b53156d" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,912</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Telecommunications and utilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedUtilitiesCurrent" id="Fact_235523f4ba6f4a07b0814589b9ac4d30" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,040</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedUtilitiesCurrent" id="Fact_37af953495bb4f2f838f9b60129bb340" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,311</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Service Contracts<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedServicesContractedCurrent" id="Fact_67268c0d8a84414c8b2e41dbd11c5fc0" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,448</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:AccruedServicesContractedCurrent" id="Fact_edaff0e9f6b9467c8a383aad57b80241" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,613</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1">Other<br/>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" id="Fact_f7bd9aadba804c86b774f605c10387cc" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,439</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" id="Fact_f69661830371411c82e6bfb8a148e3a4" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,332</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_8f3d1b49a4414d80995bbbb4994472e1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">87,122</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_2ead59b60d0642538a64fcd00fe03155" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">94,578</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);"> <div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">54</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

    <div>
      <ix:nonNumeric name="us-gaap:DebtDisclosureTextBlock" id="Text_efd3861613004368a5a650257faa579f" contextRef="c20231101to20241031" escape="true" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f101">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">NOTE 8 - DEBT</div>
</ix:nonNumeric>
    </div>

    <div>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f101" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f102">
<div><br/>
      </div>
</ix:continuation>
      <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f102" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f103"><ix:nonNumeric name="us-gaap:ScheduleOfDebtTableTextBlock" id="Text_82f4fc9107f04318827ba2b5599f213c" contextRef="c20231101to20241031" escape="true" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c1">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of October 31, 2024, the Current portion of long-term debt and the Long-term debt balances were comprised of finance leases as described below:<br/>
        </div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f103" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f104"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c1" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c2">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f104" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f105"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c2" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c3">
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; width: 85%; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold;">As of October 31, 2024</span></div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance</div>
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" id="Fact_633953619cdf4aa2b66b95d2ec4f2b56" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,972</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" id="Fact_25db93c1fb7244e1ba01d45f5efac09e" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" id="Fact_f0530ac0507945b09a44b3042c7a7002" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" id="Fact_b396815011194227826e7ea542be8406" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" id="Fact_416b6b1d6c694d3a93197570227d4164" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligations" id="Fact_a1c6672e64724b99b1d80d7700c89cee" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">25</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" id="Fact_9b86d06eeada4063a44f880fbfc26d97" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,997</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;<ix:nonNumeric name="us-gaap:DebtInstrumentPaymentTerms" id="Fact_6fcdbf0670c048e8b12bd3769e0403fe" contextRef="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember">Varies as Lease matures</ix:nonNumeric><br/>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%;" rowspan="1">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 9%;" rowspan="1" colspan="1">&#160;<ix:nonNumeric name="us-gaap:DebtInstrumentFrequencyOfPeriodicPayment" id="Fact_08e036e3f7bc4f3fa67c0e88b5aff425" contextRef="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember">Monthly</ix:nonNumeric><br/>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DebtInstrumentCollateralAmount" id="Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2" contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,293</ix:nonFraction></div>
                </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1"><sup>(1)</sup> <br/>
                </td>

  </tr>


</table>
        </div>
</ix:continuation></ix:continuation>
        <div>
          <div><ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f105" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f106"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c3" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c4">
<div><br/></div>
</ix:continuation></ix:continuation>
            <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f106" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f107"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c4" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c5">
<div>
              <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;">&#160;</td>

    <td style="width: 18pt; vertical-align: top; text-align: right;">
                      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
                    </td>

    <td style="width: auto; vertical-align: top;">
                      <div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"><ix:footnote id="Foot_9b6974bf9d974ee7b81365972f002e9c" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.</ix:footnote></div>
                    </td>

  </tr>


</table>
            </div>
</ix:continuation></ix:continuation>
          </div>

        </div>

      </div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f107" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f108"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c5" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c6">
<div><br/>
        </div>
</ix:continuation></ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">55</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

          </div>

        </div>

        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f108" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f109"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c6" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c7">
<div style="display:none;"><br/></div>
<div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">The table below provides information on the Company&#8217;s long-term debt as of October 31, 2023.</div>
</ix:continuation></ix:continuation>
      </div>

      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f109" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1010"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c7" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c8">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1010" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1011"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c8" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c9">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 85%; white-space: nowrap;">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of October 31, 2023</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" id="Fact_1c907c04559d47968625908e97e707b9" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,621</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" id="Fact_5859c85a4eb6441384f51b0d691c0ea0" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,972</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" id="Fact_7e7208eaa41d453ca974ab30b33686b1" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" id="Fact_41932576c54e482ab815bd1f22933855" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" id="Fact_de8e36a47279467c9262fee784ed1e7c" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; padding-bottom: 2px; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LongTermDebtAndCapitalLeaseObligations" id="Fact_33adbcf8639e403d83a6344dc567690c" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,998</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" id="Fact_4ad375f7d50c42cfba8dcfe652ac322c" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,619</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">N/A</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">N/A</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" colspan="1" rowspan="1"><ix:nonNumeric name="us-gaap:DebtInstrumentPaymentTerms" id="Fact_89595bb69f0244acbf3147e0a08945b8" contextRef="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember">Varies as Lease matures</ix:nonNumeric></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; white-space: nowrap;" rowspan="1">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 9%;" colspan="1" rowspan="1"><ix:nonNumeric name="us-gaap:DebtInstrumentFrequencyOfPeriodicPayment" id="Fact_4f4489da109e4e6d879a623e6c1f27d0" contextRef="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember">Monthly</ix:nonNumeric></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:DebtInstrumentCollateralAmount" id="Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b" contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,165</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1"><sup>(1)</sup> <br/>
              </td>

  </tr>


</table>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1011" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1012"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c9" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c10">
<div><sup> </sup></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1012" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1013"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c10" continuedAt="Text_31140f3e14434b81bf5e0febc190d41c11">
<div><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1013" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1014"><ix:continuation id="Text_31140f3e14434b81bf5e0febc190d41c11">
<div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="width: 100%; font-family: 'Times New Roman'; font-size: 10pt;">


  <tr style="vertical-align: top;">

    <td style="width: 27pt;">&#160;</td>

    <td style="vertical-align: top; width: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
              </td>

    <td style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Represents the carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.<br/>
                </div>
              </td>

  </tr>


</table>
         </div>
</ix:continuation></ix:continuation>
      <div>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1014" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1015">
<div><br/>
        </div>
</ix:continuation>
      </div>

      <div>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1015" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1016">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;">Finance Leases</div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1016" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1017">
<div><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1017" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1018">
<div style="display:none;"><br/></div>
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;">In February 2021, the Company entered into a <ix:nonNumeric name="us-gaap:LesseeFinanceLeaseTermOfContract1" id="Fact_352cb268b2124e6fb3c6e56be2b613a1" contextRef="c20241031_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember" format="ixt-sec:durwordsen">five-year</ix:nonNumeric> $<ix:nonFraction name="us-gaap:FinanceLeaseLiability" id="Fact_da18bf945f8341b29d5f8fa6677c0a79" contextRef="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">7.2</ix:nonFraction> million finance lease for a high-end inspection tool. Monthly
          payments on the lease, which commenced in February 2021, are $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPayment" id="Fact_11eb1e6fd4bd476f80fb7960cbcb67bc" contextRef="c20210201to20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember_LeaseContractualTermAxis_MonthlyMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction> million per month. Upon the payment of the fiftieth monthly payment
          and prior to payment of the fifty-first monthly payment, the Company may exercise an early buyout option to purchase the tool for $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" id="Fact_a6ca36f0868e4e7aba4db610e154b7e6" contextRef="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.4</ix:nonFraction>
          million. After the original term or any renewal periods, the Company may return the tool, elect to extend the lease, or purchase the tool at its fair market value. Management has determined that the Company will exercise its early buyout option
          during the first half of 2025.</div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1018" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1019">
<div><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1019" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1020">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In
            December 2020, the Company entered into <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">a <ix:nonNumeric name="us-gaap:LesseeFinanceLeaseTermOfContract1" id="Fact_325d4caf9ef9442eaa4514607a548b1d" contextRef="c20241031_DebtInstrumentAxis_Three55MillionFinanceLeaseMember" format="ixt-sec:durwordsen">five-year</ix:nonNumeric> $<ix:nonFraction name="us-gaap:FinanceLeaseLiability" id="Fact_906d1e1565c74537be96711f52a2114a" contextRef="c20201231_DebtInstrumentAxis_Three55MillionFinanceLeaseMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">35.5</ix:nonFraction>
              million</span> finance lease for a high-end lithography tool. Monthly payments on the lease, which commenced in January 2021, increased from $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPayment" id="Fact_a4d23bb1496647268efd9f84ea7a7cb9" contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FirstThreeMonthsMember" unitRef="U001" decimals="-4" scale="6" format="ixt:num-dot-decimal">0.04</ix:nonFraction>
            million during the first three months to $<ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPayment" id="Fact_b0801fc1d36c420a9700f396f2570191" contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowingNineMonthsMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.6</ix:nonFraction> million for the following nine months, followed by forty-eight monthly payments of $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPayment" id="Fact_43fc8537884c42a3a2f516730c9521c6" contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowedByThirtySixMonthsMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction></span> million. As of the due date of the forty-eighth monthly payment, the Company may exercise an early buyout option to purchase the tool for $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" id="Fact_f4126606fafa42dd9f159c14f2b18978" contextRef="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">14.1</ix:nonFraction></span> million.&#160; At the Company&#8217;s option, after the original term, the Company may return the tool, elect to extend the lease term for a period and a lease payment
            to be agreed with lessor at the time, or purchase the tool for its then-fair market value, as determined by the lessor. The lease agreement incorporates the covenants included in the Company&#8217;s Credit Agreement, as defined below (expired in
            September 2023), which are detailed below, and includes a cross-default provision for any agreement or instrument with an outstanding, committed balance greater than $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="plab:OutstandingCommittedBalanceForCrossDefaultProvision" id="Fact_edce3aa85efa4a4ba74a7dd780d53080" contextRef="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_RangeAxis_MinimumMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.0</ix:nonFraction></span>
            million in which the Company is the indebted party. Management has determined that the Company will exercise its early buyout option during the first half of 2025. </span></div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1020" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1021">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
          </span></div>
</ix:continuation>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">56</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1021" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1022">
<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-indent: -9pt; margin-left: 9pt; font-variant: normal; text-transform: none;">Xiamen Project Loans</div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1022" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1023">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1023" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1024">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
        </span> </div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1024" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1025">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1025" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1026">
<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;">In November 2018, PDMCX obtained approval to borrow RMB <ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_c1238c51c4be468ea310b9756494095b" contextRef="c20181130_DebtInstrumentAxis_ProjectLoanMember" unitRef="U006" decimals="-5" scale="6" format="ixt:num-dot-decimal">345.0</ix:nonFraction> million from the Industrial and Commercial Bank of China. From November 2018 through July 2020, PDMCX entered into separate loan agreements (the &#8220;Project Loans&#8221;) for the
        entire approved amount. In February 2023, PDMCX repaid the entire outstanding balance of RMB <ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" id="Fact_cdcf4c62dd4247bc8daeec607ed2a76d" contextRef="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember" unitRef="U006" decimals="-5" scale="6" format="ixt:num-dot-decimal">26.4</ix:nonFraction> million ($<ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" id="Fact_f88a5ebb899a4574bbb38f841ce041a2" contextRef="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.9</ix:nonFraction> million).&#160; As of October 31, 2024, PDMCX had <ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" id="Fact_2496b9dc24ba424a92e7c4ffd2ac3cfe" contextRef="c20241031_DebtInstrumentAxis_ProjectLoanMember" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction>
        amount outstanding and the amounts may not be re-borrowed. The Project Loans were used to finance certain capital expenditures at the PDMCX facility and were collateralized by liens granted on the land use right, building, and certain equipment
        located at the facility. The interest rates on the Project Loans were variable (based on the RMB Loan Prime Rate of the National Interbank Funding Center), and interest incurred on the loans was eligible for reimbursement through incentives
        provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and duration. The Project Loans were subject to covenants and provisions, certain of which related to the assets
        pledged as security for the loans, all of which the Company were in compliance with at the time of repayment.</div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1026" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1027">
<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"> <br/>
      </div>
</ix:continuation><ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1027" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1028">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span>
       <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> <span style="font-style: italic; font-weight: bold;">Xiamen Working Capital Loans</span> </span></div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1028" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1029">
<div> <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
        </span> </div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1029" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1030">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1030" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1031">
<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;">In November 2018, PDMCX obtained approval for revolving, unsecured credit of RMB <ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_10839b0503054f1589df76955961ab68" contextRef="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U006" decimals="-6" scale="6" format="ixt:num-dot-decimal">200</ix:nonFraction> million ($<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_165a1e7719d144fe9ce3aa360495c209" contextRef="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">25</ix:nonFraction> million), pursuant to which PDMCX may enter into
        separate loan agreements with varying terms to maturity. In December 2022, the Company repaid the Company&#8217;s entire outstanding balance of RMB <ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" id="Fact_3a59bde681e94d38931a878ed3c8feec" contextRef="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U006" decimals="-5" scale="6" format="ixt:num-dot-decimal">25.6</ix:nonFraction>
        million ($<ix:nonFraction name="us-gaap:RepaymentsOfLongTermDebt" id="Fact_0a9fa7b25a3e45bc85a0aff955e8cfcd" contextRef="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">3.6</ix:nonFraction> million). The interest rates are variable, based on the RMB Loan Prime Rate of the National Interbank Funding Center.
        Interest incurred on the loans related to the amount borrowed was eligible for reimbursement through incentives provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and
        duration. This facility is subject to annual reviews and extensions. In August 2024, the Company was issued an extension to the revolving, unsecured credit agreement for RMB&#160;<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_4f7790657927425097f3c3e34a163c20" contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U006" decimals="-6" scale="6" format="ixt:num-dot-decimal">200</ix:nonFraction> million (approximately $<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_b0abb0b8a2f745b2b10a46dbb56835fe" contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">28.1</ix:nonFraction> million) with an expiration date
        of <ix:nonNumeric name="us-gaap:LineOfCreditFacilityExpirationDate1" id="Fact_c5536950f65749af8b8474cf4a20ec52" contextRef="c20231101to20241031_DebtInstrumentAxis_WorkingCapitalLoanMember" format="ixt:date-monthname-day-year-en">July 31, 2025</ix:nonNumeric>. As of October 31, 2024, PDMCX had <ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" id="Fact_677cb902d27d4b788df884c62e4c3b98" contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction> outstanding borrowings against the approval.</div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1031" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1032">
<div><br/></div>
</ix:continuation>
      <div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;">
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1032" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1033">
<div style="display:none;"><br/></div>
<div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"> Corporate Credit Agreement</div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1033" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1034">
<div style="display:none;"><br/></div>
<div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"> <br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1034" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1035">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">In September 2018, the
            Company entered into a <span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:DebtInstrumentTerm" id="Fact_f166807bec5740ba9b2e3a797f1192e5" contextRef="c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember" format="ixt-sec:durwordsen">five-year</ix:nonNumeric></span></span> amended and restated credit agreement (the &#8220;Credit Agreement&#8221;), which had a $<span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><ix:nonFraction name="us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity" id="Fact_510a99d123aa40ceb40299e006a27ba9" contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">50</ix:nonFraction></span>
            million borrowing limit, with an expansion capacity to $<span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_15f4047853684d0dae091e436ac388e9" contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">100</ix:nonFraction></span> million. The Credit Agreement was secured by substantially all of the Company&#8217;s assets located in the United
            States and common stock the Company owns in certain subsidiaries. The Credit Agreement was subject to covenants around minimum interest coverage ratio, total leverage ratio, and minimum unrestricted cash balance (all of which the Company were
            in compliance with at the termination of the agreement in September 2023), and limited the amount of cash dividends, distributions, and redemptions the Company could pay on the Company&#8217;s common stock to an aggregate annual amount of $<ix:nonFraction name="us-gaap:AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" id="Fact_2002921653ce47f99753ee9c1ddf8e9c" contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">50</ix:nonFraction> million. The Credit Agreement expired and was not renewed as of October 31, 2023. There were <span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:DebtLongtermAndShorttermCombinedAmount" id="Fact_97aa038413ba4e41ab8e06ca9bfd4121" contextRef="c20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember" unitRef="U001" decimals="-6" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction></span></span></span> outstanding borrowings against the
            Credit Agreement at its expiration.</span></div>
</ix:continuation>
        <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1035" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1036">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"> <br/>
          </span></div>
</ix:continuation>
      </div>
<ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1036" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1037">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span>
       <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-weight: bold; font-style: italic;">Interest Paid for Debt</span></span></div>
</ix:continuation></div>

    <div>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1037" continuedAt="Text_7bd5a9c39412478fa7f9b719c3f63f1038">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_7bd5a9c39412478fa7f9b719c3f63f1038">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Interest payments were $<ix:nonFraction name="us-gaap:InterestPaid" id="Fact_05222819fb884b31a925bbc559d6c9c9" contextRef="c20231101to20241031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction> million in 2024, $<ix:nonFraction name="us-gaap:InterestPaid" id="Fact_9c0281ca874d475e892e5e7b95bcba83" contextRef="c20221101to20231031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.5</ix:nonFraction> million in
        2023, and $<ix:nonFraction name="us-gaap:InterestPaid" id="Fact_cc1b00ba5e384ed0a13080fa88ae0621" contextRef="c20211101to20221031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.8</ix:nonFraction> million in 2022.&#160;&#160; The weighted-average interest rate on the Company&#8217;s current portion of long-term debt for the periods
        ended October 31, 2024 and October 31, 2023 was <ix:nonFraction name="us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime" id="Fact_75fd438f69134b599a993673c7909154" contextRef="c20231101to20241031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">1.5</ix:nonFraction>% and <ix:nonFraction name="us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime" id="Fact_bb8b1a096c7f4fef8dfc07e523cb4826" contextRef="c20221101to20231031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">1.5</ix:nonFraction>%, respectively.</div>
</ix:continuation>

      <div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
        </span></div>

    </div>

    <!--PROfilePageNumberReset%Num%55%%%--> </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <ix:nonNumeric name="us-gaap:OtherLiabilitiesDisclosureTextBlock" id="Text_ab87d8a9ba7d4916979afccd45399a16" contextRef="c20231101to20241031" escape="true" continuedAt="Text_deff9588b3c14eb9bb8b44d13b9053ff1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 9 - OTHER LIABILITIES</div>
</ix:nonNumeric>
      <ix:continuation id="Text_deff9588b3c14eb9bb8b44d13b9053ff1" continuedAt="Text_deff9588b3c14eb9bb8b44d13b9053ff2">
<div><br/>
      </div>
</ix:continuation>

      <ix:continuation id="Text_deff9588b3c14eb9bb8b44d13b9053ff2" continuedAt="Text_deff9588b3c14eb9bb8b44d13b9053ff3"><ix:nonNumeric name="us-gaap:OtherLiabilitiesTableTextBlock" id="Text_685a77083d2f4663b7a7637c6c186a7d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_6e834ecf22fc4474b4294c081957808c1">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other liabilities</span> at
        the balance sheet dates.</div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_deff9588b3c14eb9bb8b44d13b9053ff3" continuedAt="Text_deff9588b3c14eb9bb8b44d13b9053ff4"><ix:continuation id="Text_6e834ecf22fc4474b4294c081957808c1" continuedAt="Text_6e834ecf22fc4474b4294c081957808c2">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_deff9588b3c14eb9bb8b44d13b9053ff4"><ix:continuation id="Text_6e834ecf22fc4474b4294c081957808c2">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
        <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2023</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Unrecognized tax benefit</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="plab:UnrecognizedTaxBenefitNoncurrent" id="Fact_7a9b64b4118c409d8f7c9fc6767c358e" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,720</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="plab:UnrecognizedTaxBenefitNoncurrent" id="Fact_bcf6eb8c7e4d4dcab32fb434b7355af2" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,908</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Post employment benefit</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:PostemploymentBenefitsLiabilityNoncurrent" id="Fact_8f22458aa23a48c9bd87ee6bc9b8354e" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,993</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:PostemploymentBenefitsLiabilityNoncurrent" id="Fact_d8ea2c6901144d1d8b252ece0875ec42" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,994</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Contract liabilities</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_2f95fd6bd1884aefaa26795067ea1258" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,910</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_17636a5435c0494fad0b841f94db689d" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,454</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Tax payable</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesNoncurrent" id="Fact_744e2e364dc44a6b96ee34bed8c14838" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,310</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesNoncurrent" id="Fact_a3d50a2eba644ce68ae4d6e54f0832c4" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,622</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Operating lease</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_6b980d2252294003bdc44d6ea2ccbbd6" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,037</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_66489a0289f14c8fba5af2a714eb4c6f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,218</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherSundryLiabilitiesNoncurrent" id="Fact_1024ca2d33aa48c48776c7959408d060" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,494</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherSundryLiabilitiesNoncurrent" id="Fact_113c8e8cad854b65a18ac4d84db40650" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,195</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 4px;">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other liabilities</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_a7690e62297643ec9cda7841288fe1d2" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">47,464</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_f40fb44b1a9f463c9eb2f49784db6593" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">47,391</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
      </div>
</ix:continuation></ix:continuation>

      <div><br/>
      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="Text_093467c54ffa428597bd11bb3e1794ee" contextRef="c20231101to20241031" escape="true" continuedAt="Text_e0108651240c4189b1514be56b4c7de71">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 10 - REVENUE</div>
</ix:nonNumeric>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de71" continuedAt="Text_e0108651240c4189b1514be56b4c7de72">
<div><br/>
    </div>
</ix:continuation>

    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de72" continuedAt="Text_e0108651240c4189b1514be56b4c7de73"><ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="Text_f1e2c7f47dae4fd3a03559248f62ccc3" contextRef="c20231101to20241031" escape="true" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c091">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present the Company&#8217;s revenue for the years ended October 31, 2024, October 31, 2023, and October 31, 2022,
      disaggregated by product type, geographic origin, and timing of recognition.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de73" continuedAt="Text_e0108651240c4189b1514be56b4c7de74"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c091" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c092">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de74" continuedAt="Text_e0108651240c4189b1514be56b4c7de75"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c092" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c093">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Product Type</span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: bottom; white-space: nowrap; text-align: center;">
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> October 31, </span></div>
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">IC</span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_20e665fe9d8946d9b432d953a585bfc2" contextRef="c20231101to20241031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">228,469</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_5c1488386ede492a9dd1f1173882923f" contextRef="c20221101to20231031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">194,939</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_78d6797455354295840e13ae47a7ade5" contextRef="c20211101to20221031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">195,332</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_d85c151d1b4b42a88d5bed483ce225c0" contextRef="c20231101to20241031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">409,682</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2f416b5621844d61a99430d6396d7a40" contextRef="c20221101to20231031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">456,340</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ee67714eb81d43b08b62ad285f21519c" contextRef="c20211101to20221031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">397,694</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total IC</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_aba51784a7784ea08e0b4b476e15c603" contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">638,151</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_b3ef5dcb3f8649cbb2fbbd7495a3e804" contextRef="c20221101to20231031_ProductOrServiceAxis_IntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">651,279</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ec9957a345cb415faf8963716817a700" contextRef="c20211101to20221031_ProductOrServiceAxis_IntegratedCircuitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">593,026</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">FPD</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_771f2aad288f4b7a90a29b5a24d66fb4" contextRef="c20231101to20241031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">195,365</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_89b4217a6b7840ce8da029f7d83065f4" contextRef="c20221101to20231031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">200,842</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_bc3565301895418caa303da7227cdf5a" contextRef="c20211101to20221031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">186,988</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_bf9dc8699c3d4d8a8a1e67fc742c764a" contextRef="c20231101to20241031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,430</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_b579ae247f274fefa58eb17d63d9b735" contextRef="c20221101to20231031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">39,955</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_00bed47dbb2f4cefb8f8f8ac456f24ce" contextRef="c20211101to20221031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">44,535</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total FPD</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_9ee263a6f4d448688b887a9cb4117570" contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">228,795</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_99392fceafeb417aad2df9155c33ba91" contextRef="c20221101to20231031_ProductOrServiceAxis_FlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">240,797</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_79b5169abf154bd98af008eaf63656cb" contextRef="c20211101to20221031_ProductOrServiceAxis_FlatPanelDisplaysMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">231,523</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_bea1b19be2f44c1ca7e9d99054ee16bc" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">866,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_fb3423b6c1e94f58b8591bdc02b99fb1" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">892,076</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_fa42cf12e4284ecb88ba9818bd3c7aae" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">824,549</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de75" continuedAt="Text_e0108651240c4189b1514be56b4c7de76"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c093" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c094">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">57</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de76" continuedAt="Text_e0108651240c4189b1514be56b4c7de77"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c094" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c095">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="10" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">Year Ended</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Geographic Origin*</span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div>&#160;October 31, </div>
            <div>2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div>&#160;October 31, </div>
            <div>2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="text-align: center; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div>&#160;<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_e6627c80a6894038a54be755a3225811" contextRef="c20231101to20241031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">288,275</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_0ddc9fddd34c4b8ebc3661af60847db3" contextRef="c20221101to20231031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">316,889</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_266e1d5ef9fc49278da67365acd002f2" contextRef="c20211101to20221031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">291,342</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;" rowspan="1">China<br/>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_22bc556d532d4520a3ba57e860fd19ce" contextRef="c20231101to20241031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">232,941</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" rowspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_a6b804d848484f39b7f861b29939edbd" contextRef="c20221101to20231031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">245,378</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" rowspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3de40eda83a949d398b85b4d8623bb00" contextRef="c20211101to20221031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">212,598</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_4089a58279474338b8171e084881ec71" contextRef="c20231101to20241031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">158,017</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_4dce7369a28845e68c321739a577a851" contextRef="c20221101to20231031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">162,235</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_088349b967de4f81b8ef3a709a736cb1" contextRef="c20211101to20221031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">156,139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2f1a9c57ed5f43259e33217e21455068" contextRef="c20231101to20241031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">146,652</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_bab3969385964f59bb9d465daaa52cd7" contextRef="c20221101to20231031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">128,879</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_6542a345986a4ee3b10e2ebc866aff08" contextRef="c20211101to20221031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">126,205</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Europe</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_8edef475eca146fea656f3ac6ecb40b6" contextRef="c20231101to20241031_StatementGeographicalAxis_EuropeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">39,244</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_63df0cc6efd5410e80c9e935cb3bde36" contextRef="c20221101to20231031_StatementGeographicalAxis_EuropeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,579</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_dba0aa5ba3d549caa6fe0049b46c9618" contextRef="c20211101to20221031_StatementGeographicalAxis_EuropeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,402</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1b42ed89ce72467e9f24f757bec11a5d" contextRef="c20231101to20241031_StatementGeographicalAxis_OtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,817</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_35854d804b334b9c9b3eb0b6e0ac2c89" contextRef="c20221101to20231031_StatementGeographicalAxis_OtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,116</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_8ff2838ee6dc4512aa06ec699c769476" contextRef="c20211101to20221031_StatementGeographicalAxis_OtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,863</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_a39ab698dda246128a7fea52caae3412" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">866,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_338e3ab939bd45cb990cb793b7134ab0" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">892,076</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_0f49dbc742bf4724b0c04563d285b898" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">824,549</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de77" continuedAt="Text_e0108651240c4189b1514be56b4c7de78"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c095" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c096">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de78" continuedAt="Text_e0108651240c4189b1514be56b4c7de79"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c096" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c097">
<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 30px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">* <ix:footnote id="Foot_d8a533a5ae26463280e109aabb6faf35" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">This table disaggregates revenue by the location in which it was earned.</ix:footnote></span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de79" continuedAt="Text_e0108651240c4189b1514be56b4c7de710"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c097" continuedAt="Text_7f3d3b0513a14b38a6fa5123bb5b3c098">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de710" continuedAt="Text_e0108651240c4189b1514be56b4c7de711"><ix:continuation id="Text_7f3d3b0513a14b38a6fa5123bb5b3c098">
<table cellspacing="0" cellpadding="0" border="0" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="10">Year Ended &#160;&#160; <br/>
          </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Timing of Recognition</span></div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2024</div>
          </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2023</div>
          </td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Over time</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f58ca76fba8c4a6db191a674d80b8e62" contextRef="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">831,500</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f6f8877529ac48a1955c1fa6af356d42" contextRef="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">838,628</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_08dfb1c1e598426288e9dd951b1e7855" contextRef="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">758,359</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">At a point in time</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f1987de8b0ce4c9ea3fa01b24ef3a508" contextRef="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,446</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3b5a60b2ae6d4f9b8ed10ee6f7164e72" contextRef="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">53,448</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3c3ecb609c0e44f1baf69b350e6e2ac0" contextRef="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">66,190</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>&#160;</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1de96e24c8e548129d0bea907f91e857" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">866,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2ebb79b7c9a34aef9057468ad827e04b" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">892,076</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2ff6d3d766db4b18a31edf00da62273e" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">824,549</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div>&#160;</div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de711" continuedAt="Text_e0108651240c4189b1514be56b4c7de712">
<div> <br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de712" continuedAt="Text_e0108651240c4189b1514be56b4c7de713">
<div><span style="font-weight: bold; font-style: italic; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">Contract Assets and Contract Liabilities</span><br/>
    </div>
</ix:continuation>
    <div><ix:continuation id="Text_e0108651240c4189b1514be56b4c7de713" continuedAt="Text_e0108651240c4189b1514be56b4c7de714"><ix:nonNumeric name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="Text_afb38a16ec304d0093396bea3fba49c7" contextRef="c20231101to20241031" escape="true" continuedAt="Text_82a39dfaa6d14d52a711bf510573db731">
<div><br/>
      </div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de714" continuedAt="Text_e0108651240c4189b1514be56b4c7de715"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db731" continuedAt="Text_82a39dfaa6d14d52a711bf510573db732">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-family: 'Times New Roman';"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The




            following table provides information about the Company&#8217;s contract balances at the balance sheet dates.</span></span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de715" continuedAt="Text_e0108651240c4189b1514be56b4c7de716"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db732" continuedAt="Text_82a39dfaa6d14d52a711bf510573db733">
<div><span style="font-family: 'Times New Roman';">&#160;</span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de716" continuedAt="Text_e0108651240c4189b1514be56b4c7de717"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db733" continuedAt="Text_82a39dfaa6d14d52a711bf510573db734">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;" rowspan="1">
              <div style="font-weight: bold; font-family: 'Times New Roman';">Classification</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, <br/>
                2024</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Assets</span></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-family: 'Times New Roman';" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-family: 'Times New Roman';" colspan="2">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other current assets</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNet" id="Fact_98174d3fcea444e1a2180c460dc94fee" contextRef="c20241031_BalanceSheetLocationAxis_OtherCurrentAssetsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,532</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNet" id="Fact_786e13c5cfef4d158a4687045e129432" contextRef="c20231031_BalanceSheetLocationAxis_OtherCurrentAssetsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,984</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; font-family: 'Times New Roman';">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Liabilities</span></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Accrued liabilities</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_3609457e6d244f07907489057dcc04bf" contextRef="c20241031_BalanceSheetLocationAxis_AccruedLiabilitiesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,375</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_f50612157b59448f93de8b871c671437" contextRef="c20231031_BalanceSheetLocationAxis_AccruedLiabilitiesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,965</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other liabilities</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_532cb43b0a1941aea3d76c5639504a35" contextRef="c20241031_BalanceSheetLocationAxis_OtherLiabilitiesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,910</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_c8b4e84d8f8543d48a8ebbd89457169b" contextRef="c20231031_BalanceSheetLocationAxis_OtherLiabilitiesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,454</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 4px; font-family: 'Times New Roman';">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_60f0af7a23164491b1100e793d9742c6" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,285</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_72a302e8f47b4e71b2f79b6d3f6f9df4" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,419</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de717" continuedAt="Text_e0108651240c4189b1514be56b4c7de718"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db734" continuedAt="Text_82a39dfaa6d14d52a711bf510573db735">
<div><span style="font-family: 'Times New Roman';">&#160;</span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de718" continuedAt="Text_e0108651240c4189b1514be56b4c7de719"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db735" continuedAt="Text_82a39dfaa6d14d52a711bf510573db736">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents revenue recognized
          from contract liabilities that existed at the beginning of the reporting periods. </span><span style="font-family: 'Times New Roman';">&#160;</span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de719" continuedAt="Text_e0108651240c4189b1514be56b4c7de720"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db736" continuedAt="Text_82a39dfaa6d14d52a711bf510573db737">
<div> <span style="font-family: 'Times New Roman';"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de720" continuedAt="Text_e0108651240c4189b1514be56b4c7de721"><ix:continuation id="Text_82a39dfaa6d14d52a711bf510573db737">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2022</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
              <div style="font-family: 'Times New Roman';">Revenue recognized from beginning liability</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" id="Fact_c3de497a5abe4ca6ad761737b8b5176a" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,222</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" id="Fact_a97a8ace57fa42fca383635cd77bfccc" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,966</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" id="Fact_fe6425f9d8894832a18bb8263da8bd24" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,934</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de721" continuedAt="Text_e0108651240c4189b1514be56b4c7de722">
<div><span style="font-weight: normal; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
        </span></div>
</ix:continuation>

      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de722" continuedAt="Text_e0108651240c4189b1514be56b4c7de723"><ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="Text_eacb5d7959bb48ec8067a18d863c121d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_8d080fdc56744f07886fe77ce39c1f7c1">
<div style="display:none;"><br/></div>
<div style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">The Company&#8217;s invoice terms generally
        range from net <span style="-sec-ix-hidden:Fact_599542974f764e109fc11a4ac9750c4f">thirty</span> to <ix:nonNumeric name="plab:ProductInvoiceTerm" id="Fact_95bcc348402048dea8de92e9ab8e1949" contextRef="c20231101to20241031_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">ninety days</ix:nonNumeric>,
        depending on both the geographic market in which the transaction occurs and the Company&#8217;s payment agreements with specific customers. In the event that the Company&#8217;s evaluation of a customer&#8217;s business prospects and financial condition indicate
        that the customer presents a collectability risk, the Company will modify terms of sale, which may require payment in advance of performance. At the time of adoption, the Company elected the practical expedient allowed under ASC Topic 606 &#8220;Revenue
        from Contracts with Customers&#8221; (&#8220;Topic 606&#8221;) that permits the Company not to adjust a contract&#8217;s promised amount of consideration to reflect a financing component when the period between when the Company transfers control of goods or services to
        customers and when the Company is paid is one year or less.</div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de723" continuedAt="Text_e0108651240c4189b1514be56b4c7de724"><ix:continuation id="Text_8d080fdc56744f07886fe77ce39c1f7c1" continuedAt="Text_8d080fdc56744f07886fe77ce39c1f7c2">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de724" continuedAt="Text_e0108651240c4189b1514be56b4c7de725"><ix:continuation id="Text_8d080fdc56744f07886fe77ce39c1f7c2" continuedAt="Text_8d080fdc56744f07886fe77ce39c1f7c3">
<div> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span> </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de725" continuedAt="Text_e0108651240c4189b1514be56b4c7de726"><ix:continuation id="Text_8d080fdc56744f07886fe77ce39c1f7c3" continuedAt="Text_8d080fdc56744f07886fe77ce39c1f7c4">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_e0108651240c4189b1514be56b4c7de726"><ix:continuation id="Text_8d080fdc56744f07886fe77ce39c1f7c4">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">In
          instances when the Company is paid in advance of the Company&#8217;s performance, the Company records a contract liability and, as allowed under the practical expedient in Topic 606, recognize interest expense only if the period between when the
          Company receives payment from the customer and the date when the Company expects to be entitled to the payment is greater than one year. Historically, advance payments the Company has received from customers have generally not preceded the
          completion of the Company&#8217;s performance obligations by more than one year. </span> </div>
</ix:continuation></ix:continuation>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;"> <br/>
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">58</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:LesseeOperatingLeasesTextBlock" id="Text_82ba5d9342fd4d4da0fc9c7f10ca440c" contextRef="c20231101to20241031" escape="true" continuedAt="Text_0b0903e950a6491ca63c23527a499a081">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;">NOTE 11 - LEASES</div>
</ix:nonNumeric>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a081" continuedAt="Text_0b0903e950a6491ca63c23527a499a082">
<div><br/>
    </div>
</ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a082" continuedAt="Text_0b0903e950a6491ca63c23527a499a083"><ix:nonNumeric name="plab:InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" id="Text_2abfec70b1774ce297317b262f238944" contextRef="c20231101to20241031" escape="true" continuedAt="Text_5afbe2bf88ee4ae7a15d39b5110a82c21">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table provides information on operating and finance leases included in the Company&#8217;s consolidated balance sheets.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a083" continuedAt="Text_0b0903e950a6491ca63c23527a499a084"><ix:continuation id="Text_5afbe2bf88ee4ae7a15d39b5110a82c21" continuedAt="Text_5afbe2bf88ee4ae7a15d39b5110a82c22">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a084" continuedAt="Text_0b0903e950a6491ca63c23527a499a085"><ix:continuation id="Text_5afbe2bf88ee4ae7a15d39b5110a82c22">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Operating Leases</span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_e8e8c545bc864b06b0577fcd644ac09b"><span style="-sec-ix-hidden:Fact_b4cb7129b71940b6b50393ee53e87598">Other assets</span></span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_fa5108a21c4945f694aa043f748ec327" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,010</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_c57a0d31852348838b02426375fa9786" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,189</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Finance Leases</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_8706baf0b4a0466d9ef2b89f59b7270e"><span style="-sec-ix-hidden:Fact_765cd50c756e45d59be9c0bd312deb00">Property, plant and equipment, net</span></span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAsset" id="Fact_96048084db05426c9a936c0d721b0db5" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,293</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAsset" id="Fact_bdc3a6c548994c3fab0ae569f170ead0" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,165</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Operating Leases</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bac605cca03d4db9b005c1c5e38ebb4e"><span style="-sec-ix-hidden:Fact_4662dc911fd242c59f78644e7c671198">Accrued liabilities</span></span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_4825c009d098427f894f40d811d555d1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,925</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_0181657b535a4f4da8559ab759d8b561" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,912</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_f2e4447e1ddf477e8d84073b9710c2d9"><span style="-sec-ix-hidden:Fact_a0cf7b23a5be4102aba701801191947a">Other liabilities</span></span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_988c96aa3f6f4397a188d54e74f8834f" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,037</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_833fa53b35b54b45ab60dbcb86f9dad9" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,218</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" id="Fact_7ad7b7c56c8940a8808aecfa18c01502" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,962</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" id="Fact_7ab0d2edcd9e416fafa39a35f423baaf" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,130</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Finance Leases</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bcdd19554cb14a1b8addbc63acc37d1c"><span style="-sec-ix-hidden:Fact_02bcc5c17bc34ac88d993f4748f0176e">Current portion of long-term debt</span></span><br/>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityCurrent" id="Fact_dda76151087c46f39702df37a5a91f8d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,972</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityCurrent" id="Fact_bda526ca89684adeb2ac1ae1dad466e8" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,621</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_fc386990839946f5980f8174f7d08fe1"><span style="-sec-ix-hidden:Fact_b0c8a6aa29b74344a7a394c915c7fd4d">Long-term debt</span></span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityNoncurrent" id="Fact_a4722106137f419c9d592b3cce85ebed" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">25</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityNoncurrent" id="Fact_5cafc02af77843d2b3449c3f882a6f56" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,998</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiability" id="Fact_d132cd504c0540f6b03dbe1d27e813f3" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,997</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiability" id="Fact_92b4ae1fc1cc44efa9882037531d6b2c" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,619</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a085" continuedAt="Text_0b0903e950a6491ca63c23527a499a086">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a086" continuedAt="Text_0b0903e950a6491ca63c23527a499a087"><ix:nonNumeric name="plab:FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" id="Text_85d5a12f2c424f469a637b83cf73997b" contextRef="c20231101to20241031" escape="true" continuedAt="Text_81232bd6628b47a7b05afb78a2d7204c1">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents future lease payments under noncancelable operating and finance leases as of October 31, 2024. Imputed interest represents the difference between undiscounted cash flows and discounted cash flows.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a087" continuedAt="Text_0b0903e950a6491ca63c23527a499a088"><ix:continuation id="Text_81232bd6628b47a7b05afb78a2d7204c1" continuedAt="Text_81232bd6628b47a7b05afb78a2d7204c2">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"> <br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a088" continuedAt="Text_0b0903e950a6491ca63c23527a499a089"><ix:continuation id="Text_81232bd6628b47a7b05afb78a2d7204c2">
<table cellspacing="0" cellpadding="0" border="0" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" id="Fact_b10fddbacbcd419cb474790da04876d4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,039</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" id="Fact_afa8b76824864e4fa2ead1c240fbcd1d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,027</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" id="Fact_4df1d7c4b0eb4d10b994880b0b743898" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,651</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" id="Fact_434d5a36903348a4a9edc829706d382b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" id="Fact_e0e0c8aaeda8423dbf7f3f10d62f50d4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,228</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" id="Fact_23cb89c1aaa1453b824e3b8e7b6973c1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" id="Fact_a01f6216969e4fd9866d25041e1aeb65" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">267</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" id="Fact_c45a3d16949540b2829e051bf552f0d7" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2029 and thereafter<br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" id="Fact_e73a2785ea6544df8ccc6ee35fe8d700" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:FinanceLeaseLiabilityPaymentsDueAfterYearFour" id="Fact_c80a74b9b8bb4f1bb45d11711663f4a3" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total lease payments</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">$<br/>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" id="Fact_46e4c20ca5f04798b6056a06be94a6ea" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,191</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1"><br/>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDue" id="Fact_4bde850bf2ed4ce99d4a5af5aba8831d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,054</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Imputed interest</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" id="Fact_adaf28306d5f4e1085662c7a8ae82ae6" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">229</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" id="Fact_eca5988ce5944a6889e9aa4177e7f42a" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">57</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" id="Fact_9f736d4daf374e2bac9b48c9b6d6eb0b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,962</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseLiability" id="Fact_d5a0d202a85a4ae49b7659a7e699912b" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,997</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a089" continuedAt="Text_0b0903e950a6491ca63c23527a499a0810">
<div><br/>
    </div>
</ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0810" continuedAt="Text_0b0903e950a6491ca63c23527a499a0811"><ix:nonNumeric name="us-gaap:LeaseCostTableTextBlock" id="Text_8521640fb285498ab223e0621c3611cb" contextRef="c20231101to20241031" escape="true" continuedAt="Text_51a4a66ea8fc418ebb8034614e6e5d981">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">The following table presents lease costs for 2024, 2023, and 2022.</span><span style="font-size: 10pt; font-family: 'Times New Roman';"><br/>
      </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0811" continuedAt="Text_0b0903e950a6491ca63c23527a499a0812"><ix:continuation id="Text_51a4a66ea8fc418ebb8034614e6e5d981" continuedAt="Text_51a4a66ea8fc418ebb8034614e6e5d982">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0812" continuedAt="Text_0b0903e950a6491ca63c23527a499a0813"><ix:continuation id="Text_51a4a66ea8fc418ebb8034614e6e5d982">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating lease costs</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseCost" id="Fact_1ca7703a3db24ea3b6a14b256550f24e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,255</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseCost" id="Fact_6fe1a959178a4327b6e6a1a081ff17b1" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,278</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$<br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:OperatingLeaseCost" id="Fact_9d3f09bd1e16492fab5c54d4566e6142" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,253</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Short-term lease costs</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShortTermLeaseCost" id="Fact_2287dfeccebc4dfea4dfe039049bd2e7" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,273</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShortTermLeaseCost" id="Fact_75597073733a485b862bb4db5e075481" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">462</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:ShortTermLeaseCost" id="Fact_36a7b87cfa5842f99345de82dbd5b7f2" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">469</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Variable lease costs</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableLeaseCost" id="Fact_91b352481c434e06a12244afe748406e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">595</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:VariableLeaseCost" id="Fact_e6ea7b2b46df4392a08eb21d5c060e80" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">656</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:VariableLeaseCost" id="Fact_2cbc1518a88645e69c4414d73dc771cd" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">603</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest on finance lease<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestExpense" id="Fact_6dbcf261259045d9b1563a0e4b21472b" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">330</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestExpense" id="Fact_f1252da5a1904e3b981029d461ebe39a" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">426</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestExpense" id="Fact_c2a7d4435de9494c8514ceba38273b18" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">522</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Amortization of ROU assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" id="Fact_b3a50b27454340649a6e35d85c306f40" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,950</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" id="Fact_1b3ad51b35c1423e847e90777ca753f6" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,870</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" id="Fact_c88214fc1d6e4bacb88acb7618742346" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,917</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0813" continuedAt="Text_0b0903e950a6491ca63c23527a499a0814">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">59</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0814" continuedAt="Text_0b0903e950a6491ca63c23527a499a0815"><ix:nonNumeric name="plab:LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" id="Text_d01834a69cca403a953d2cfe10872367" contextRef="c20231101to20241031" escape="true" continuedAt="Text_09cae0aa7f0b459289bbeaa96ce287681">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents statistical information related to the Company&#8217;s operating and finance leases. The information presented is as of the balance sheet dates.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0815" continuedAt="Text_0b0903e950a6491ca63c23527a499a0816"><ix:continuation id="Text_09cae0aa7f0b459289bbeaa96ce287681" continuedAt="Text_09cae0aa7f0b459289bbeaa96ce287682">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0816" continuedAt="Text_0b0903e950a6491ca63c23527a499a0817"><ix:continuation id="Text_09cae0aa7f0b459289bbeaa96ce287682">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; width: 51%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 51%; white-space: nowrap;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> remaining</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> years)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-<br/>
            </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> average discount</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;rate<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">remaining </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;years)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> discount rate</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 51%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating leases</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: middle; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_8f1aa7d9fef94fd1b947e88b3401a05f" contextRef="c20241031" format="ixt-sec:duryear">2.8</ix:nonNumeric></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" id="Fact_cd152f12b7ad47009c1249a5eb82655a" contextRef="c20241031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">3.2</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_73d61ba2ee1d4c7b9ced7ad10061d31b" contextRef="c20231031" format="ixt-sec:duryear">3.7</ix:nonNumeric></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" id="Fact_4602efd8750f4bf48ecba2542312e338" contextRef="c20231031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">2.4</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 51%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finance leases</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: middle; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_a956213dce324c29a3e4d56889282169" contextRef="c20241031" format="ixt-sec:duryear">0.2</ix:nonNumeric></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" id="Fact_e1251471d6a04630b24a5ada7eae2624" contextRef="c20241031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">1.5</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_fccc2c39624f4f07b151450fbf6d292e" contextRef="c20231031" format="ixt-sec:duryear">1.2</ix:nonNumeric><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" id="Fact_0c1db4cedc5346d78709c884908aa354" contextRef="c20231031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">1.5</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0817" continuedAt="Text_0b0903e950a6491ca63c23527a499a0818">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation>

    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0818" continuedAt="Text_0b0903e950a6491ca63c23527a499a0819"><ix:nonNumeric name="plab:CashAndNonCashInformationRelatedToLeasesTextBlock" id="Text_626cb4449a5243dfa2d5630ed87ba1d6" contextRef="c20231101to20241031" escape="true" continuedAt="Text_8302d0f32c2849d3b70900e974cdc4e41">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table presents the effects of leases on the Company&#8217;s 2024, 2023, and 2022 consolidated statements of cash flows, and provides leases-related non-cash information for those years.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0819" continuedAt="Text_0b0903e950a6491ca63c23527a499a0820"><ix:continuation id="Text_8302d0f32c2849d3b70900e974cdc4e41" continuedAt="Text_8302d0f32c2849d3b70900e974cdc4e42">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_0b0903e950a6491ca63c23527a499a0820"><ix:continuation id="Text_8302d0f32c2849d3b70900e974cdc4e42">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; padding-bottom: 2px; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for operating leases</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" id="Fact_360d35b8cbf749f298baf5334752d003" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,241</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" id="Fact_bed5667e96614c8da9cb598269ac2341" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,271</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" id="Fact_5bee82620a5a4e81baca15794667728f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,259</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for finance leases</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestPaymentOnLiability" id="Fact_b3c90b934c3341b3b62662a0233ca5f9" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">330</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestPaymentOnLiability" id="Fact_6ffd8c3ed33a465f881f901545f9a7c6" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">429</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:FinanceLeaseInterestPaymentOnLiability" id="Fact_5298c8a70015478c8e6ad03b52e2357d" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">566</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Financing cash flows used for finance leases</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" id="Fact_36b76a128040452cbc81697256a1d6e3" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,621</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" id="Fact_00411ff6919e498793a48f43b0ec265e" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,521</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" id="Fact_fe00749efd3c4fcdaead431fe9b22310" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,289</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">ROU assets obtained in exchange for operating lease obligations</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" id="Fact_eb5bcdf4a319423c868eae15c74f5dae" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">842</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" id="Fact_b8edc2a280fc4fc38285e562d4cf24c6" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,116</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" id="Fact_f78526c76b494e70aea3718b3b5b62c3" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">513</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <div> <br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">60</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:nonNumeric name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="Text_2b2bd9a483db433f8de9898d98e56b1f" contextRef="c20231101to20241031" escape="true" continuedAt="Text_e36418830f0148cba59762f2079f2a3e1">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;">NOTE 12 - SHARE-BASED
      COMPENSATION</div>
</ix:nonNumeric>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e1" continuedAt="Text_e36418830f0148cba59762f2079f2a3e2">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;"> <br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e2" continuedAt="Text_e36418830f0148cba59762f2079f2a3e3">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e3" continuedAt="Text_e36418830f0148cba59762f2079f2a3e4">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In March 2016, shareholders
        approved the Company&#8217;s current equity incentive compensation plan (&#8220;the Plan&#8221;), under which incentive stock options, non-qualified stock options, stock grants, stock-based awards, restricted stock, restricted stock units, stock appreciation rights,
        performance units, performance stock, and other stock or cash awards may be granted. Shares to be issued under the Plan may be authorized and unissued shares, issued shares that have been reacquired by <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company</span> (in the open market or in private transactions), or a combination thereof. The maximum
        number of shares of common stock approved that may be issued under the Plan was <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" id="Fact_8d77409f95ed4bcdb95dc595f045d08f" contextRef="c20230315" unitRef="U002" decimals="-6" scale="6" format="ixt-sec:numwordsen">four</ix:nonFraction> million shares.&#160;<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> On March 16, 2023, at its annual meeting of shareholders,
          the shareholders of Photronics, Inc., approved amendments to the Plan to increase the number of shares available for issuance by an additional <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" id="Fact_90947fc238f747ba8905c574c1f6c207" contextRef="c20230316to20230316" unitRef="U002" decimals="-6" scale="6" format="ixt-sec:numwordsen">one</ix:nonFraction>
          million shares, thereby increasing the shares available for issuance under the Plan from <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" id="Fact_f455e32acda54a27b82953cf04138cc2" contextRef="c20230315" unitRef="U002" decimals="-6" scale="6" format="ixt-sec:numwordsen">four</ix:nonFraction> million to <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" id="Fact_e75aa277cd2e44bd8c60267a8d5a38be" contextRef="c20230316" unitRef="U002" decimals="-6" scale="6" format="ixt-sec:numwordsen">five</ix:nonFraction> million.</span> Awards may be granted to officers, employees, directors, consultants, advisors, and independent contractors of Photronics or its
        subsidiaries. In the event of a change in control (as defined in the Plan)</span> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">or at the discretion of the compensation committee;</span><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> the vesting of awards may be accelerated. The Plan, aspects of which are more fully described below, prohibits further awards from being issued under prior plans. </span></div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e4" continuedAt="Text_e36418830f0148cba59762f2079f2a3e5">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="Text_ca6545b75eb44aabaa6376727fae51e6" contextRef="c20231101to20241031" escape="true" continuedAt="Text_ea925535ad394f2b82e18c3d50a3ec7d1"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e5" continuedAt="Text_e36418830f0148cba59762f2079f2a3e6">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The table below presents
        information on the Company&#8217;s share-based compensation expenses for the three most recent fiscal years. </span> </div>
</ix:continuation></ix:nonNumeric>
    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <ix:continuation id="Text_ea925535ad394f2b82e18c3d50a3ec7d1" continuedAt="Text_ea925535ad394f2b82e18c3d50a3ec7d2"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e6" continuedAt="Text_e36418830f0148cba59762f2079f2a3e7">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_ea925535ad394f2b82e18c3d50a3ec7d2" continuedAt="Text_ea925535ad394f2b82e18c3d50a3ec7d3"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e7" continuedAt="Text_e36418830f0148cba59762f2079f2a3e8">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="10">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Expense reported in:</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Cost of goods sold</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_43ccb95730ab431c9fec6be550198289" contextRef="c20231101to20241031_IncomeStatementLocationAxis_CostOfSalesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,704</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_b5bf1ff8b4ad4da7834010e210be3d5c" contextRef="c20221101to20231031_IncomeStatementLocationAxis_CostOfSalesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,259</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_a136597be42f43cdbe50ca584e86cdba" contextRef="c20211101to20221031_IncomeStatementLocationAxis_CostOfSalesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">868</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64.02%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Selling, general, and administrative</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_5c16a556de474ed48cd97a5689c47702" contextRef="c20231101to20241031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,124</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_60524e54cc7b46e5af2c6fc3b64e3c1b" contextRef="c20221101to20231031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,962</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_420b5d18cf7f4f209a268c958894e2a5" contextRef="c20211101to20221031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,803</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Research and development</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_bd069a6c1ed04553a0e49a97247c92dc" contextRef="c20231101to20241031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,062</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_915207789b4f459abc4127cf403d1690" contextRef="c20221101to20231031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">780</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_5c3ccbfafd274d8784e07cd478ce845a" contextRef="c20211101to20221031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">637</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total expense incurred</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_1e88af636b094462ba500d52ff1cfec1" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,890</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_127eccfd240b4ae785447fe4f8eeb967" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,001</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_97de82be78294ede800b33fb63059e01" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,308</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%;">Expense by award type:<br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1"><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);">
              <div style="margin-left: 9pt">Restricted stock awards *<br/>
              </div>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_b6345882ec6e4416bf5caec90e37cb0e" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,868</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_1247915d6df5498893078c153721d5bc" contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,909</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_26e56986bbb7429da0abfdf7e16023f6" contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,800</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%;">
              <div style="margin-left: 9pt">Stock options<br/>
              </div>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_284cdd430af248809139323139c93642" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_ee4a27e2ae5f41e1a9b324990147668a" contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_21d05b7b228840819588fee2c94afe2e" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">298</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);">
              <div style="margin-left: 9pt">Employee stock purchase plan<br/>
              </div>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_2b8cbf04cd41448fb0adb1053df1cbc4" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">22</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_248c0c7af95441e69aaecb743b846f20" contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">91</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_ba7467fa036e4f1c96f51d37aba2ee44" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">210</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;">Total expense incurred<br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_6c19fd8ca0614473b2e12ae3b081b8ae" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,890</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_ab9990c7f1db41d7a5c54a8fbb2b901e" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,001</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" colspan="1"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_9d86e426a6294905928d528795037f38" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,308</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64.02%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax benefits of share-based compensation<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" id="Fact_80c89a2aca3f4f20851d5382b992a9a0" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,156</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" id="Fact_5ed638e51b044132b440552b9433d403" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">715</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1.02%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9.04%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" id="Fact_d6eb65f1ef0447e1bd1a912d52fe97cc" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">449</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_ea925535ad394f2b82e18c3d50a3ec7d3" continuedAt="Text_ea925535ad394f2b82e18c3d50a3ec7d4"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e8" continuedAt="Text_e36418830f0148cba59762f2079f2a3e9">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_ea925535ad394f2b82e18c3d50a3ec7d4"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e9" continuedAt="Text_e36418830f0148cba59762f2079f2a3e10">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">* <ix:footnote id="Foot_c1f2496a68c84bbb832393ee9845363b" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">During the year ended October 31, 2024, upon the departure of <ix:nonFraction name="plab:NumberOfExecutivesDeparted" id="Fact_ecae7304bc0e45abadd97e155733dbdc" contextRef="c20231101to20241031" unitRef="U007" decimals="INF" scale="0" format="ixt-sec:numwordsen">two</ix:nonFraction> executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $<ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_224f8c253e4644cd84e14e12d9649e0f" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis_ExecutiveOfficerMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.2</ix:nonFraction> million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.</ix:footnote><br/>
      </div>
</ix:continuation></ix:continuation>

      <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e10" continuedAt="Text_e36418830f0148cba59762f2079f2a3e11">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation>
    </div>


    <ix:nonNumeric name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="Text_f55655446d17467889f3a95253549f2f" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" escape="true" continuedAt="Text_5f20ab3dcc7c41f794ee58b351b4b8151"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e11" continuedAt="Text_e36418830f0148cba59762f2079f2a3e12">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-style: italic;">Restricted Stock Awards</span><br/>
      </span> </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_5f20ab3dcc7c41f794ee58b351b4b8151" continuedAt="Text_5f20ab3dcc7c41f794ee58b351b4b8152"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e12" continuedAt="Text_e36418830f0148cba59762f2079f2a3e13">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_5f20ab3dcc7c41f794ee58b351b4b8152" continuedAt="Text_5f20ab3dcc7c41f794ee58b351b4b8153"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e13" continuedAt="Text_e36418830f0148cba59762f2079f2a3e14">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_5f20ab3dcc7c41f794ee58b351b4b8153" continuedAt="Text_5f20ab3dcc7c41f794ee58b351b4b8154"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e14" continuedAt="Text_e36418830f0148cba59762f2079f2a3e15">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e15" continuedAt="Text_e36418830f0148cba59762f2079f2a3e16">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;"><ix:continuation id="Text_5f20ab3dcc7c41f794ee58b351b4b8154"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">We periodically grant restricted stock awards, the restrictions on which
      typically lapse over a service period of <span style="-sec-ix-hidden:Fact_35a7636fabec45859dd6fb4811787cac">one</span> to <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_d670cf52cbc54590be0f47a7dde2f3f6" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric>. The fair values of the awards are determined on the date of grant, based on the closing stock price of <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> common stock.</span></ix:continuation> <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="Text_c86502aa5baa47528be72469a8c3fe6d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f9151e828c8345cdb52a481fea0e62a41"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">A summary of restricted stock award activity during 2024 and the status of the Company&#8217;s&#160; restricted stock awards as of October 31, 2024, is presented below.</span></ix:nonNumeric></div>
</ix:continuation><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e16" continuedAt="Text_e36418830f0148cba59762f2079f2a3e17"><ix:continuation id="Text_f9151e828c8345cdb52a481fea0e62a41" continuedAt="Text_f9151e828c8345cdb52a481fea0e62a42">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span>
     <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e17" continuedAt="Text_e36418830f0148cba59762f2079f2a3e18"><ix:continuation id="Text_f9151e828c8345cdb52a481fea0e62a42" continuedAt="Text_f9151e828c8345cdb52a481fea0e62a43">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e18" continuedAt="Text_e36418830f0148cba59762f2079f2a3e19"><ix:continuation id="Text_f9151e828c8345cdb52a481fea0e62a43">
<table cellspacing="0" cellpadding="0" border="0" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid; white-space: nowrap;">
            <div style="text-align: center; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Restricted Stock</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Shares</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-Average</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fair Value at</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Grant Date</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_06d0ec0db0924cd98b58c1d96870e2c2" contextRef="c20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">1,238,297</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" id="Fact_b6ab4cb4fff14856bfa95126558b66fb" contextRef="c20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">16.27</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Granted</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_3ec90c9640a2481cac51050e3e0f504b" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">865,050</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" id="Fact_3bc3d5db831a41d49c11d2cd35bd62cc" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">29.50</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Vested</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" id="Fact_243a967fdccc41f2a8cd16e2579c6f0a" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">550,069</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" id="Fact_78bc630209494ec0b0fe843f55f2c3ff" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">17.74</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cancelled</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" id="Fact_914a51b355e34b75a8f551427372a5ed" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">129,676</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" id="Fact_eb9b3878eb034864af3ab46187bf29b3" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">21.90</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_199f2f645b3a4a2fb0b5b5006760fb2a" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">1,423,602</ix:nonFraction><br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" id="Fact_129989aa1ff743b781457bb1313939b0" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">23.23</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; padding-bottom: 4px;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Expected to vest as of October 31, 2024</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" id="Fact_e4f777a2c4b0410094c5a6dce5d712d8" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">1,292,883</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" id="Fact_d550eb20651d4a2e98070e7f2b88c907" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">23.14</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e19" continuedAt="Text_e36418830f0148cba59762f2079f2a3e20">
<div><br/>
    </div>
</ix:continuation>
    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
      <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" id="Text_5925bad84f564675bedd8e720f2e9f9c" contextRef="c20231101to20241031" escape="true" continuedAt="Text_df8e248c4dd74ebd9d57dfef93d3e0581"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e20" continuedAt="Text_e36418830f0148cba59762f2079f2a3e21">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents additional information on <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> restricted stock awards for the three most recent fiscal years.</div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_df8e248c4dd74ebd9d57dfef93d3e0581" continuedAt="Text_df8e248c4dd74ebd9d57dfef93d3e0582"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e21" continuedAt="Text_e36418830f0148cba59762f2079f2a3e22">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_df8e248c4dd74ebd9d57dfef93d3e0582" continuedAt="Text_df8e248c4dd74ebd9d57dfef93d3e0583"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e22" continuedAt="Text_e36418830f0148cba59762f2079f2a3e23">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_df8e248c4dd74ebd9d57dfef93d3e0583"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e23" continuedAt="Text_e36418830f0148cba59762f2079f2a3e24">
<table cellspacing="0" cellpadding="0" border="0" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="10">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Number of shares granted</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_5aec2b91873b460ca41d6e87cd46522e" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">865,050</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_42275ff712704e8cb11f207da475cd02" contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">791,925</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_bd61c5c7b631461cb4dd5a302ec62799" contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">654,224</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Weighted-average grant-date fair value of awards (in dollars per share)</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" id="Fact_0b9f618127ca4eac80e76ab72a276c5c" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">29.50</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" id="Fact_7e190a08bf6449ada7119f7eb2fa6c92" contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">16.84</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" id="Fact_c00d6d365cc84697af5ba302acde9d7a" contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">18.73</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); font-weight: normal;">Compensation costs not yet recognized<br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">$ <br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" id="Fact_cd78afea90cd472a99feb8b6518c43ee" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,303</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" id="Fact_156c2fe65d4e46f39ea9f38376721be6" contextRef="c20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,760</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">$<br/>
            </td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" id="Fact_a0f07893aed746a181f4186b63caf14f" contextRef="c20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,949</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;">Weighted-average amortization period (in years)<br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Fact_d004c4eb7e1743e69725f603a4773d84" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" format="ixt-sec:duryear">2.8</ix:nonNumeric></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Fact_0481a3ad34ae44eebded3e92ce5d3ac2" contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember" format="ixt-sec:duryear">2.8</ix:nonNumeric></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Fact_2ea168e5993a4751b9bc2bb36c60025a" contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember" format="ixt-sec:duryear">2.7</ix:nonNumeric></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Fair value of awards for which restrictions lapsed</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" id="Fact_3be0e36562cd408e9b01f5fc6cff2008" contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,755</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" id="Fact_f0531c28cc4b4f20a55b47a17b6c6975" contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,256</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" id="Fact_66cd119dfec9429486c6368c688dadfd" contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,212</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;">Shares outstanding at balance sheet date<br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_4aacb2771138443897395a83c8c8f564" contextRef="c20241031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">1,423,602</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_c2647f0e56f649599dae7a96b94c4370" contextRef="c20231031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">1,238,297</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" colspan="1">&#160;</td>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" colspan="1"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_9e3b5954f2c141cfa0a92606518eafb6" contextRef="c20221031_AwardTypeAxis_RestrictedStockMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">893,704</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e24" continuedAt="Text_e36418830f0148cba59762f2079f2a3e25">
<div>

      <br class="Apple-interchange-newline"/></div>
</ix:continuation>
    </div>


    <ix:nonNumeric name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="Text_387a9d67dd484f71b4fb9f533c6adeaf" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" escape="true" continuedAt="Text_00e21f4dcaff430588757740c48617501"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e25" continuedAt="Text_e36418830f0148cba59762f2079f2a3e26">
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-align: left; text-transform: none;">Stock Options</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_00e21f4dcaff430588757740c48617501" continuedAt="Text_00e21f4dcaff430588757740c48617502"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e26" continuedAt="Text_e36418830f0148cba59762f2079f2a3e27">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_00e21f4dcaff430588757740c48617502" continuedAt="Text_00e21f4dcaff430588757740c48617503"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e27" continuedAt="Text_e36418830f0148cba59762f2079f2a3e28">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_00e21f4dcaff430588757740c48617503" continuedAt="Text_00e21f4dcaff430588757740c48617504"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e28" continuedAt="Text_e36418830f0148cba59762f2079f2a3e29">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_00e21f4dcaff430588757740c48617504"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e29" continuedAt="Text_e36418830f0148cba59762f2079f2a3e30">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;">Option awards generally vest in <span style="-sec-ix-hidden:Fact_bbe2f99fe0104d4199695adc89834fdf">one</span> to <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_f6d97a42f0c742ab94c2ad2d877a21ac" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric> and have a <ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="Fact_4301ea94edc648289344a0e67c2d2cff" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" format="ixt-sec:durwordsen">ten-year</ix:nonNumeric> contractual term. All incentive and non-qualified stock option grants must have an exercise price no less than the market value of the underlying
      common stock on the date of grant. The grant-date fair values of options are based on closing prices of the Company&#8217;s common stock on the dates of grant and are calculated using the Black-Scholes option pricing model. Expected volatility is based on
      the historical volatility of the Company&#8217;s common stock. The Company uses historical option exercise behavior and employee termination data to estimate expected term, which represents the period of time that options granted are expected to remain
      outstanding. The risk-free rate of return for the estimated term of an option is based on the U.S. Treasury yield curve in effect at the date of grant.</div>
</ix:continuation></ix:continuation><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e30" continuedAt="Text_e36418830f0148cba59762f2079f2a3e31">
<div>
     <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e31" continuedAt="Text_e36418830f0148cba59762f2079f2a3e32">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e32" continuedAt="Text_e36418830f0148cba59762f2079f2a3e33">
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">61</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="Text_7832a177afb64ffcaec367172df5c785" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f9cd22cfdcfe47409fe190ffe83e3e331"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e33" continuedAt="Text_e36418830f0148cba59762f2079f2a3e34">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents a summary of stock
      options activity during 2024 and information on stock options outstanding at October 31, 2024.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_f9cd22cfdcfe47409fe190ffe83e3e331" continuedAt="Text_f9cd22cfdcfe47409fe190ffe83e3e332"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e34" continuedAt="Text_e36418830f0148cba59762f2079f2a3e35">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_f9cd22cfdcfe47409fe190ffe83e3e332" continuedAt="Text_f9cd22cfdcfe47409fe190ffe83e3e333"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e35" continuedAt="Text_e36418830f0148cba59762f2079f2a3e36">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_f9cd22cfdcfe47409fe190ffe83e3e333" continuedAt="Text_f9cd22cfdcfe47409fe190ffe83e3e334"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e36" continuedAt="Text_e36418830f0148cba59762f2079f2a3e37">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_f9cd22cfdcfe47409fe190ffe83e3e334"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e37" continuedAt="Text_e36418830f0148cba59762f2079f2a3e38">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); margin-left: 0px; margin-right: auto; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; width: 55%; white-space: nowrap;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
              </span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Shares</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Exercise Price</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); width: 9%; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Remaining</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Contractual Life</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Aggregate</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Intrinsic Value</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" id="Fact_c4cbf3bf65864be992d1d1e72a3c014e" contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">472,275</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" id="Fact_239b74c26d284b008e359e13d929a6a0" contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">10.18</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 55%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Granted</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" id="Fact_c8b9e61f4a824e2c867265bf1d2505f1" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="INF" scale="0" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" id="Fact_55562d0b5499445a9f951db9c0776982" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="0" scale="0" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercised</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" id="Fact_5e9f1e6dce8d426fad3f1058594684d3" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">191,650</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" id="Fact_f298a258c9684b9faaf1918e956c4331" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">9.86</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px; width: 55%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Cancellations,
              forfeitures, and adjustments</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; border-bottom: 2px solid rgb(0, 0, 0); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(<ix:nonFraction name="plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" id="Fact_0954cf1604af427abe9d5d66a62abcbe" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">3,000</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" id="Fact_30627588ecd04974b4a5e820736d50b2" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">10.43</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" id="Fact_ad83dc810ec54d6f81e4d1c261852f7b" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">277,625</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" id="Fact_1e50618dd0794e279edf293a54027559" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">10.39</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="Fact_63fda878da184b2f849efea6586776c0" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" format="ixt-sec:duryear">1.94</ix:nonNumeric> years</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" id="Fact_64af2dddfb62455d8e448f1a3f4c2a9a" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,445</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 55%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercisable at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" id="Fact_06d068c4f9f84715b6fdec5bb7d81f4b" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">277,625</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" id="Fact_eb219bb0a71b40e3a85b99097dcff212" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">10.39</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="Fact_b42f2b16ca5540a0bd30a0d6222a844a" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" format="ixt-sec:duryear">1.94</ix:nonNumeric> years</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" id="Fact_a7fec708ec354fb0b8fe9d5b0d4a8458" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,445</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Expected to vest as
              of October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" id="Fact_b5a3db721c484744a34f88990a4e4d5c" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="INF" scale="0" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" id="Fact_cff0dea649c6417588e15356b70aac18" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="0" scale="0" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">- years</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" id="Fact_4e5c65bbcd014f9caf9dc94dd8e91443" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e38" continuedAt="Text_e36418830f0148cba59762f2079f2a3e39">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span>
    <span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e39" continuedAt="Text_e36418830f0148cba59762f2079f2a3e40">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
    </div>
</ix:continuation>
    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" id="Text_a4f191429b9240fa91011ef0f77b035c" contextRef="c20231101to20241031" escape="true" continuedAt="Text_8dd8768a93114fe7aff0193798d9d0de1"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e40" continuedAt="Text_e36418830f0148cba59762f2079f2a3e41">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; text-indent: 18pt;">The table below presents additional information on stock option awards for the three most recent fiscal years.</div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_8dd8768a93114fe7aff0193798d9d0de1" continuedAt="Text_8dd8768a93114fe7aff0193798d9d0de2"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e41" continuedAt="Text_e36418830f0148cba59762f2079f2a3e42">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_8dd8768a93114fe7aff0193798d9d0de2"><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e42" continuedAt="Text_e36418830f0148cba59762f2079f2a3e43">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">Number of options granted in period<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" id="Fact_e4ecb4e08f8748688adccb785e72c006" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="INF" scale="0" format="ixt:fixed-zero">-</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" id="Fact_dbc03d3b03274637905ab4f729f037ca" contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="INF" scale="0" format="ixt:fixed-zero">-</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" id="Fact_2e4bdb97bc9f48beb3cfae3390502a2f" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="INF" scale="0" format="ixt:fixed-zero">-</ix:nonFraction><br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total intrinsic value of options exercised</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" id="Fact_978e81a1243b4f86867652563cef5e6b" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,981</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" id="Fact_ad68989ab05d4497a7beb522da212539" contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,654</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" id="Fact_779ac6f9b36149ea82ef94ccb27fe9d9" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,108</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash received from option exercises</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromStockOptionsExercised" id="Fact_ca1d68a87ceb4268ba15058a9256d192" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,888</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromStockOptionsExercised" id="Fact_b1d741e88401448b8bf1150b6f2d5ce0" contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,101</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ProceedsFromStockOptionsExercised" id="Fact_68fdfd473e824e46b1f50b00289fd331" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,275</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%;">Compensation cost not yet recognized<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">$<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" id="Fact_ce8f9a9e4ed243f5aa959699afb37d97" contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">$<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" id="Fact_c4edf97a48c34de6aa48871a981a396e" contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">$<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" id="Fact_516e8e4a46dd4e9d9154a3de38ee7bac" contextRef="c20221031_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);">Weighted-average amortization period for cost not yet recognized (in years)<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">-</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">-<br/>
            </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Fact_54ef0a6fe9bf4c5ea42c00c9a9011a2b" contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember" format="ixt-sec:duryear">0.2</ix:nonNumeric></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation><ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e43" continuedAt="Text_e36418830f0148cba59762f2079f2a3e44">
<div>
       <br/></div>
</ix:continuation>
    </div>

    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e44" continuedAt="Text_e36418830f0148cba59762f2079f2a3e45"><ix:nonNumeric name="plab:EmployeeStockPurchasePlanPolicyTextBlock" id="Text_8558f5d6a7df48158df70f8ad60c57c8" contextRef="c20231101to20241031" escape="true" continuedAt="Text_67bea86fd5444a97bc2eee72aeee50c41">
<div><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-transform: none;">Employee Stock Purchase Plan </span></div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e45" continuedAt="Text_e36418830f0148cba59762f2079f2a3e46"><ix:continuation id="Text_67bea86fd5444a97bc2eee72aeee50c41" continuedAt="Text_67bea86fd5444a97bc2eee72aeee50c42">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e46" continuedAt="Text_e36418830f0148cba59762f2079f2a3e47"><ix:continuation id="Text_67bea86fd5444a97bc2eee72aeee50c42" continuedAt="Text_67bea86fd5444a97bc2eee72aeee50c43">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e36418830f0148cba59762f2079f2a3e47"><ix:continuation id="Text_67bea86fd5444a97bc2eee72aeee50c43">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"><span style="font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The Company&#8217;s Employee Stock Purchase Plan (&#8220;ESPP&#8221;) permits employees to purchase
          Photronics, Inc. common shares at <ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" id="Fact_e2bc8ab99a2b46b49b15c9e70d4c6d8f" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">85</ix:nonFraction>% of the lower of the closing market price at the commencement or ending date of the Plan year
          (which is approximately <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_fbf2be1745cd4c2bb5a1cb9ee151af17" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember" format="ixt-sec:durwordsen">one year</ix:nonNumeric> from the commencement date). The Company recognizes the ESPP expense over that same period. As of
          October 31, 2024, the maximum number of shares of common stock approved by the Company&#8217;s shareholders to be purchased under the ESPP was <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" id="Fact_48a9288ee75d425398f54d760e9cdd0f" contextRef="c20241031_AwardTypeAxis_EmployeeStockMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal">1.85</ix:nonFraction>
          million shares, of which approximately <ix:nonFraction name="plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" id="Fact_060e44d0bad34b04863a1ecb1fb2ec36" contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.6</ix:nonFraction> million shares had been issued through October 31, 2024. As of October 31, 2024, there is
          unrecognized compensation cost of $<ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" id="Fact_aa028819b0b043e2b5d133c17c677bba" contextRef="c20241031_AwardTypeAxis_EmployeeStockMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction> million.</span></span> </div>
</ix:continuation></ix:continuation>
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span>
    <span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span><span style="font-family: 'Times New Roman'; font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="Text_1c92de86ddbb4e23890e30618241ed91" contextRef="c20231101to20241031" escape="true" continuedAt="Text_4ddc82d16c35436c88899754616d15521">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 13 - EMPLOYEE RETIREMENT PLANS</div>
</ix:nonNumeric>
    <ix:continuation id="Text_4ddc82d16c35436c88899754616d15521" continuedAt="Text_4ddc82d16c35436c88899754616d15522">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_4ddc82d16c35436c88899754616d15522">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We maintain a 401(k) Savings and Profit-Sharing Plan (&#8220;401(k) Plan&#8221;) which covers all full and certain part-time U.S. employees who
      have completed <ix:nonNumeric name="plab:NumberOfMonthsOfServiceCompleted" id="Fact_6022e76d29494ba6ae2cc09e49d8b0ef" contextRef="c20231101to20241031" format="ixt-sec:durwordsen">three months</ix:nonNumeric> of service and are <ix:nonNumeric name="plab:MinimumAgeOfEmployeesToComeUnderRetirementPlan" id="Fact_59b135387ca54458ad3b379e887c777d" contextRef="c20231101to20241031" format="ixt-sec:duryear">18</ix:nonNumeric> years of age or older. Under the terms of the 401(k) Plan, employees may contribute up to <ix:nonFraction name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" id="Fact_c722fd7701f8415db0117ab456e12d5c" contextRef="c20231101to20241031" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">50</ix:nonFraction>% of
      their salary, subject to certain maximum amounts, which will be matched by the Company at <ix:nonFraction name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" id="Fact_be1609efdd404db49c03c91b6bde51ab" contextRef="c20231101to20241031" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">100</ix:nonFraction>% of the employee&#8217;s contributions that are up
      to <ix:nonFraction name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" id="Fact_8ee55fd9a7564848b3ae00c67f81e99a" contextRef="c20231101to20241031" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">4</ix:nonFraction>% of the employee&#8217;s compensation. Employee and employer contributions vest immediately upon contribution. The total employer
      contributions for all of the Company&#8217;s defined contribution plans were $<ix:nonFraction name="us-gaap:DefinedContributionPlanCostRecognized" id="Fact_a28b9a4497464d49a8cec298799237d4" contextRef="c20231101to20241031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.2</ix:nonFraction> million, $<ix:nonFraction name="us-gaap:DefinedContributionPlanCostRecognized" id="Fact_d68e22edd1cd48929ee7fbe1fef1ee0b" contextRef="c20221101to20231031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.8</ix:nonFraction> million and $<ix:nonFraction name="us-gaap:DefinedContributionPlanCostRecognized" id="Fact_4215d955631848cc9dbf9c75abeae4bc" contextRef="c20211101to20221031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.7</ix:nonFraction> million in 2024, 2023, and 2022, respectively.</div>
</ix:continuation>
<div>
     <span class="HorizontalTab" style="width: 9pt; font-size: 1px; display: inline-block;"><br/>
    </span></div>
 </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div><br/>
    </div>


    <ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" id="Text_5e11cf6807534702a9f3936c687830d2" contextRef="c20231101to20241031" escape="true" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c1">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 14 - INCOME TAXES</div>
</ix:nonNumeric>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c1" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c2">
<div><br/>
    </div>
</ix:continuation>
    <div>
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c2" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c3">
<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">On December 15, 2022, the European Union (EU) Member States formally adopted the EU&#8217;s Pillar Two Directive, which generally provides for a minimum
        effective tax rate of 15%, as established by the Organization for Economic Co-operation and Development (OECD) Pillar Two Framework. The EU effective dates are January 1, 2024, and January 1, 2025, for different aspects of the directive. A
        significant number of other countries are expected to also implement similar legislation with varying effective dates. The Company is currently not subject to Pillar Two but is continuously evaluating the potential impact of the Pillar Two
        Framework to ensure we are compliant in the future.<br/>
      </div>
</ix:continuation>
    </div>

    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c3" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c4">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" id="Text_a3279d248d8245338ea0778902e6e3c9" contextRef="c20231101to20241031" escape="true" continuedAt="Text_1eee7c7b9cf64a3d85506a8d70aa252a1"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c4" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income before the income tax provisions consists of the following:</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_1eee7c7b9cf64a3d85506a8d70aa252a1" continuedAt="Text_1eee7c7b9cf64a3d85506a8d70aa252a2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c5" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c6">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_1eee7c7b9cf64a3d85506a8d70aa252a2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c6" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c7">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" id="Fact_e64a301fe81c4a5d92774e460e62dbc7" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">20,145</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" id="Fact_c212bfdc1821427b86463d2e583e33c9" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,737</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" id="Fact_9116f34754a644dabf67409eae19488f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,813</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" id="Fact_8dc3ebb87bf648d49471d85df5b7884c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">227,270</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" id="Fact_4c0ea14fbbfe4c0d9ad8b8ca8d6e81ae" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">271,683</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" id="Fact_bfce4d72251040158091c6b4fd68f3b5" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">237,220</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_166726cae95e46f1adaceb15093fc812" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">247,415</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_9a6776e6158346a68407fcdad24d7201" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">269,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_7d77b15479684025816e979d4a3b8ef5" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">239,033</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c7" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c8">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c8" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c9">
<div><span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">62</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c9" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c10">
<div><span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;">Income Tax Provision</span><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c10" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c11">
<div><span style="font-weight: bold;"> <br/>
      </span></div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="Text_86b11c8ab97d47d8ab293fca7d7aeb12" contextRef="c20231101to20241031" escape="true" continuedAt="Text_245f28ef201f4f77857f17f702a77cef1"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c11" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c12">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The components of our income tax provisions are presented below.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_245f28ef201f4f77857f17f702a77cef1" continuedAt="Text_245f28ef201f4f77857f17f702a77cef2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c12" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c13">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_245f28ef201f4f77857f17f702a77cef2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c13" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c14">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current:</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" id="Fact_667bc5dbc3ca414a96e1c47972eb6578" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" id="Fact_7fe2e2a1bac848c8a443a03e3706ac45" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" id="Fact_7836fce4cad84e2595fedff60157518f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" id="Fact_ca1cf07cf5ad4e30a0956a422e51f7f5" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">95</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" id="Fact_7b45a9e500614339b2cd6a9f00846ab2" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">14</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" id="Fact_d02233ff55eb41d7b90531bd7a992f92" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" id="Fact_e1927a24e84546f9b33788bd52b28292" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,861</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" id="Fact_24ff85a3dfc74406a7851305bd5d0320" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">71,225</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CurrentForeignTaxExpenseBenefit" id="Fact_c37c5b26dff34d898f2a9a81fc9bcdf2" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">58,981</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" id="Fact_eea002102578470e9e5bd8ab37f3c35b" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,956</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" id="Fact_9268f31b61e041fa8b542e47f599efb7" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">71,239</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" id="Fact_74d88fed2ad447568325506fb512f0dd" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">58,982</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Deferred:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" id="Fact_594527bad4614f56bc64113acf3ad67d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" id="Fact_94e52687feb8421381f1995dc16fffba" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" id="Fact_e50f5a5d14e5430a890d3833ce1c1993" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" id="Fact_0603f20bb0e84982b63559a1af68a69d" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" id="Fact_71583a32b8824a32bcd5500c8293494c" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" id="Fact_f94282382013421794ea3521c796a532" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" id="Fact_b6f163006a1b40af9e2030654924441c" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,402</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" id="Fact_e964470bdf3142e2bfe80eb22481eafc" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">939</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" id="Fact_19ca697c49814b099649f4747c71c650" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">799</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_75da82ae91d64b15b2db7d27357d96d3" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,389</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_614f3ae270c04292a73a1b39a1690e0a" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">927</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_c79ddd9ac2d845deb2c92bd0d95bdd63" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">809</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_cf22baf66dda427caeca9dbc483255df" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,567</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_57a7f4e4271240dab67e5d9d10bf13e4" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,312</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_73f679d150364b2abff93c7aaa4b5e6c" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,791</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c14" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c15">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="Text_50277f96ee12468dba43682973adbd4d" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f027e547239e4b40856fedab4a59695e1"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c15" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c16">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below presents a reconciliation of income taxes calculated by applying the statutory U.S. federal income tax rate to our
      income tax provisions of the reporting periods.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_f027e547239e4b40856fedab4a59695e1" continuedAt="Text_f027e547239e4b40856fedab4a59695e2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c16" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c17">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_f027e547239e4b40856fedab4a59695e2" continuedAt="Text_f027e547239e4b40856fedab4a59695e3"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c17" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c18">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">U.S. federal income tax at statutory rate</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" id="Fact_3ed29218fbbe42bca8c4f8f6c858d732" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,957</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" id="Fact_92273aedb88946aab8cdbbc9ed0b22dd" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,689</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" id="Fact_4aed6e226d52420a80a21da99d47a175" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,197</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Changes in valuation allowance</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" id="Fact_eae40a66a0194907827e00574688c61e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,986</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" id="Fact_1779c8b6dabe4b75b3c1fc1c478673b5" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">256</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" id="Fact_c98f6c79d36f4bea9a9bc6c08d460629" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,462</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign rate differential</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" id="Fact_5ebc0dc5d28042a3bad03e58b9efa4f6" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,695</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" id="Fact_810b85bf29dc4df295a5dec4f3065015" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,394</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" id="Fact_06d94b8750794379bcb1ec85097938ed" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,941</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credits</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCredits" id="Fact_bce64663f1c541c59c07a4b1b2432977" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,209</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCredits" id="Fact_a5f66fa12c9a4bbfad8cce02eaa251f3" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,425</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxCredits" id="Fact_b306213bbfba4108abfeb3c3a1f08383" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,368</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Uncertain tax positions, including reserves, settlements and resolutions</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxContingencies" id="Fact_1626861632ef4a1b960746e52f997703" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,226</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxContingencies" id="Fact_95f57f14c0b14e8ab6c66820ecfd6219" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,328</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationTaxContingencies" id="Fact_71c69355695d4f47a637db41f000321a" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,214</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other, net</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" id="Fact_c9bd8886fcbb40d9b39272f4a29b5a34" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,884</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" id="Fact_68b0db6f29614579b450f73d9e1fb03a" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,582</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxReconciliationOtherAdjustments" id="Fact_aac61ccfabc04654a82e1e9bda0a5ec4" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,269</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;"><span style="font-style: italic;">Income tax provision</span><br/>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_9796d140cc0f4db1b0817e8f6c68c772" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,567</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_ac6342bd13634413b69967faa9fcfeee" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,312</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_2a426d1da7174aaeaeca16fa9ac469e1" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,791</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <div>
      <ix:continuation id="Text_f027e547239e4b40856fedab4a59695e3" continuedAt="Text_f027e547239e4b40856fedab4a59695e4"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c18" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c19">
<div><br/>
      </div>
</ix:continuation></ix:continuation>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">63</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <ix:continuation id="Text_f027e547239e4b40856fedab4a59695e4"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c19" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c20">
<div>
        <table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 18%; white-space: nowrap;">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Reporting</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Period</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">U.S. Statutory</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Tax Rates<br/>
                </div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics </div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Effective Tax</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Rates</div>
              </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 40%; white-space: nowrap;">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Primary Reasons for Differences</div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">2024</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" id="Fact_6b2f00fbba424523a386bdeabf4ae1c8" contextRef="c20231101to20241031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">21.0</ix:nonFraction>%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_c292a238b9dc4fd394a575245ed7ef04" contextRef="c20231101to20241031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">25.7</ix:nonFraction>%</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"><br/>
              </td>

    <td valign="bottom" style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" id="Fact_d2dde58b9c09413da950a1a19bc9675a" contextRef="c20221101to20231031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">21.0</ix:nonFraction>%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_ffe40ae7464b4eddb2988079396715a7" contextRef="c20221101to20231031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">26.0</ix:nonFraction>%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td valign="bottom" style="vertical-align: top; width: 40%;">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; background-color: rgb(204, 238, 255); text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2022</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" id="Fact_2cb4cdda52f04343a73b34536ace7753" contextRef="c20211101to20221031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">21.0</ix:nonFraction>%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_d179c5e28400464f8be7a7b897fafd8c" contextRef="c20211101to20221031" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">25.0</ix:nonFraction>%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td valign="bottom" style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);">
                <div>Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions; and the establishment of uncertain tax positions in non-U.S. jurisdiction.<br/>
                </div>
              </td>

  </tr>


</table>
      </div>
</ix:continuation></ix:continuation><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c20" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c21">
<div>
      <br/></div>
</ix:continuation>
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">64</span></div>

      <div class="BRPFPageBreak" style="page-break-after:always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <div style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;">
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c21" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c22">
<div style="text-align: left; background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;">Deferred Income Tax Assets
        and Liabilities</div>
</ix:continuation>
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c22" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c23">
<div style="text-align: left;"> <br/>
      </div>
</ix:continuation>
    </div>


    <ix:nonNumeric name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="Text_518dc55ec94441eeaa678c6cab68ebfa" contextRef="c20231101to20241031" escape="true" continuedAt="Text_004d2f0c8b2143778ac7b99fc025b9341"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c23" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c24">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The net deferred income tax assets consist of the following:</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_004d2f0c8b2143778ac7b99fc025b9341" continuedAt="Text_004d2f0c8b2143778ac7b99fc025b9342"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c24" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c25">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_004d2f0c8b2143778ac7b99fc025b9342"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c25" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c26">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">Deferred income tax
                  assets</span></span></div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net operating losses</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" id="Fact_33a2c6fcaa2c4dbeb375a4ffce663e31" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,941</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" id="Fact_017dea2c805045cea30749ce2793062c" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">26,377</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Reserves not currently deductible</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" id="Fact_58fea0287a5b4c709599dccfa238abbe" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,892</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" id="Fact_a09085bc0b644503ab08d21d8adde23a" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,776</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credit carryforwards</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther" id="Fact_b2ee23bcf1b94299a52c9db6e8dadb35" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,550</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther" id="Fact_5b3b6546f2364bdc9438e8ba37db8d55" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,442</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" id="Fact_5962d803084c43a8862454d69a47bd8c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,102</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" id="Fact_ab4eb1a1b27345bd894e46efc0160874" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,892</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant and equipment</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" id="Fact_b8ba575d2b73466e91751cedb1a6e0a9" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,710</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" id="Fact_08bd622be49742cba8f04ad7bb05be7b" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,844</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%;">
            <div style="margin-left: 9pt;">Research intangibles<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" id="Fact_76febcd9739b4b3e8a0cc1e64bc24124" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,721</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" id="Fact_466c23c5a2b94f958cc3e28f2bc33eef" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="plab:DeferredTaxAssetsLeaseLiability" id="Fact_0f62437a75f74e238f71501822196379" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,116</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="plab:DeferredTaxAssetsLeaseLiability" id="Fact_bb37384b9abf4d1c86dc793aafcb264f" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,743</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" id="Fact_f5ae1539f2d4414ab7394d172c785c1c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">62,032</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" id="Fact_725071436502499da2f881cb0304b6cb" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,074</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Valuation allowances</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" id="Fact_1123c628d1224a018c9ffddc039637b1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">30,633</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" id="Fact_246eb704d592456ba76443d0cdbf3260" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,619</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" id="Fact_a572fac5ff4246608b0ee34f698d2b77" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,399</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" id="Fact_878e2d4283f8482784fc3ed0dd765ffe" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">30,455</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Deferred income tax liabilities</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">ROU assets<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:DeferredTaxLiabilitiesRightOfUseAsset" id="Fact_a100ab4b6a05435dae1dca400a7b0ca5" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,351</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="plab:DeferredTaxLiabilitiesRightOfUseAsset" id="Fact_3272843c1fe94515b034fae0b8c68bba" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,193</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">Other</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" id="Fact_2e6b6eeba4884cb79290cedc57b299a1" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,458</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" id="Fact_4021d3d02b5f4ceaa34351319d368451" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,200</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" id="Fact_f2af2268d8d54ea08572e97835c0076e" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,809</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" id="Fact_ac5a9025ecf64be9afddd5778c2b50a3" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,393</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net deferred income tax assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" id="Fact_b6a66fceb06d41baba83be63dbcd2d21" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,590</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" id="Fact_7c0bfffdd0254e73a8f2df786e9dafbb" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,062</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 8.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Classification</span><br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Deferred income tax assets</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_30585839d4514a3aa6d4e94a45b838a4" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,059</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_0386e3877db44771b9d4b53254c52f09" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,297</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Other liabilities</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" id="Fact_81f671bb510743c2ba3e4612db199f94" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">469</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" id="Fact_7bd09c09ac994099be1f47720e9f2740" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">235</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" id="Fact_84597d53d9d7495292557e58004ad340" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,590</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" id="Fact_b903d7c23bbb415480340640a695e554" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,062</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c26" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c27">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c27" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c28">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">We have established a valuation allowance for a portion of our deferred tax assets because we believe, based on the weight of all available evidence,
      that it is more likely than not that a portion of our deferred tax assets will expire prior to utilization. In 2024 the valuation allowance decreased as a result of management&#8217;s determination that tax benefits on deferred tax assets would more likely
      than not be realized and, therefore, decreased the valuation allowance to include these deferred tax assets.</div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c28" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c29">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:UnremittedEarningsInForeignInvestmentPolicy" id="Text_89f954ffdd6d45fa952e08418a90bfaa" contextRef="c20231101to20241031" escape="true"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c29" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c30">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Due to the Tax Cuts and Jobs Act, which was signed into law in December 2017, as of fiscal year end 2018, U.S. deferred taxes were no longer provided on
      the undistributed earnings of non-U.S. subsidiaries. Our policy to indefinitely reinvest these earnings in non-U.S. operations remains unchanged for the purpose of determining deferred tax liabilities for U.S. state and foreign withholding taxes.
      Therefore, should we elect in the future to repatriate the remaining foreign earnings deemed to be indefinitely reinvested, we may incur additional state and foreign withholding tax expense on those earnings, the amount of which is not practicable to
      compute.</div>
</ix:continuation></ix:nonNumeric>
    <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c30" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c31">
<div><br/>
      </div>
</ix:continuation>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">65</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>

    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c31" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c32">
<div><span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"> <span style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Tax </span>Credits and Carryforwards </span></div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c32" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c33">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock" id="Text_0728fba833df493ba92d10b59fdca2c0" contextRef="c20231101to20241031" escape="true" continuedAt="Text_1707dd6b86a642c6a0fff59504e26a0c1"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c33" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c34">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present our available operating loss and credit carryforwards as of October 31, 2024, and their related
      expiration periods.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_1707dd6b86a642c6a0fff59504e26a0c1" continuedAt="Text_1707dd6b86a642c6a0fff59504e26a0c2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c34" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c35">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_1707dd6b86a642c6a0fff59504e26a0c2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c35" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c36">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; width: 76%; white-space: nowrap;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating Loss Carryforwards</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 76%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" id="Fact_0216e5b9647a4ab38f4d39117bd6a291" contextRef="c20241031_IncomeTaxAuthorityAxis_DomesticCountryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,729</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: right; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_2e15202e5cff414388ac6f6c863b56a3">2030</span>-Indefinite</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">$<br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" id="Fact_959a8ecee192444581a02ff78a2bb95b" contextRef="c20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">135,736</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_34100c5eedc249c59a0ecd6f981b8cf9">2025</span>-Indefinite</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$ <br/>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" id="Fact_1b41b3d212cd4f0e8a04c6aa0f311a83" contextRef="c20241031_IncomeTaxAuthorityAxis_ForeignCountryMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">165</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_347c339d30ed4499a61835a1dcf4e686">2025</span>-<span style="-sec-ix-hidden:Fact_89a71140677543b98550247b393e4c6b">2034</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c36" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c37">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:SummaryOfTaxCreditCarryforwardsTextBlock" id="Text_dcc1323b94764337a0bfbee0498bae94" contextRef="c20231101to20241031" escape="true"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c37" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c38">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Tax Credit Carryforwards</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal research and development</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TaxCreditCarryforwardAmount" id="Fact_12c936c73ae64cdca4d0b42616c51fac" contextRef="c20241031_TaxCreditCarryforwardAxis_ResearchMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,042</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9">2025</span>-<span style="-sec-ix-hidden:Fact_ada4c71dc88e4a1481325de16531bfdc">2044</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 76%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;">Federal 48D credit<br/>
          </td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$ <br/>
          </td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:TaxCreditCarryforwardAmount" id="Fact_5c3cbd7985254191addbbfccb97dec0a" contextRef="c20241031_TaxCreditCarryforwardAxis_InvestmentCreditMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,276</ix:nonFraction></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><span style="-sec-ix-hidden:Fact_ce8445dff0d5453f9609997657734e2d">2043</span>-<span style="-sec-ix-hidden:Fact_512726a9d52c48fe84be8a862e033b07">2044</span></td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 76%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" rowspan="1" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TaxCreditCarryforwardAmount" id="Fact_e49e6e01456a405aaa0533ebf59190bf" contextRef="c20241031_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,357</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_8a8dcb3a0ef94c4ab0cae95b84da7412">2025</span>-<span style="-sec-ix-hidden:Fact_908a2b39d03e4d05baa4ed0f4cf2c141">2038</span></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:nonNumeric>

    <div>
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c38" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c39">
<div><br/>
      </div>
</ix:continuation>
      <div>
        <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c39" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c40">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; background-color: rgb(255, 255, 255); font-variant: normal; text-transform: none;">Uncertain Tax Positions</div>
</ix:continuation>
        <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c40" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c41">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><br/>
        </div>
</ix:continuation>

        <ix:nonNumeric name="us-gaap:IncomeTaxUncertaintiesPolicy" id="Text_52a294549f4144f7a5e0bad1032c4884" contextRef="c20231101to20241031" escape="true"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c41" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c42">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">We include unrecognized tax benefits in <span style="font-style: italic;">Other liabilities</span>, and we include any applicable interest and penalties related to uncertain tax positions in our income tax provision. </div>
</ix:continuation></ix:nonNumeric>
         </div>

      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c42" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c43">
<div><br/></div>
</ix:continuation>
    </div>


    <ix:nonNumeric name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" id="Text_7293288648514c0c8a3efb769b0c15f0" contextRef="c20231101to20241031" escape="true" continuedAt="Text_8a46c24d57194a9e8d807e999170d16e1"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c43" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c44">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">A reconciliation of the beginning and ending amounts of unrecognized tax benefits is presented below. The amounts in the table
      include settlements of non-U.S. audits.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_8a46c24d57194a9e8d807e999170d16e1" continuedAt="Text_8a46c24d57194a9e8d807e999170d16e2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c44" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c45">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_8a46c24d57194a9e8d807e999170d16e2"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c45" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c46">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at beginning of year before interest and penalties<br/>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_923e209e6281482193f74730ae959c69" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,332</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_e1d2ec0cb5e74c4cab1b5e5dba7d78fe" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,204</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_903c9fee799f49b491cca0fe3625bf43" contextRef="c20211031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,534</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(Reductions) additions of tax positions in prior years</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" id="Fact_7dda54eacb4d49c9887c827f195827d9" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">86</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" id="Fact_1238caed38d94decac942659c6e2a665" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">209</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" id="Fact_bdef837b34f84a5396968ed970e7ceb9" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">355</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Additions based on current year tax positions</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" id="Fact_a2ec260a8e1648818a0ef1e31db16ea1" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" id="Fact_e8cf17d96eef41e592ae9b7a911a28f9" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,361</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" id="Fact_f4a3e8b3e77e4f8a80dca2e3bc6d77c7" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,892</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Settlements</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" id="Fact_c3e06bf5dd064162af2a629e2c87bc8a" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">835</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" id="Fact_731f55a007214596b3419715d19bcb03" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">423</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" id="Fact_75f8f6193cc7496ea96880cc32b49bca" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">848</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lapses of statutes of limitations</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" id="Fact_f78282ec3cef4884976d358a06c34b82" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">30</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" id="Fact_18f87e296cb9451e89bd78002567308c" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" id="Fact_6935b962f58e4720bcf6ea9f83b27276" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year before interest and penalties</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_eb08f29bfa754969a3d4cf76516e93bc" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,692</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_308d0904a5684557bbee6282dcc3d85e" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,332</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" id="Fact_5f06daca1cad401db9dd6ae9aea88d25" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,204</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest and penalties</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact_94c0674f92134c82bd10d2f77a756a55" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,028</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact_ccf36d3e21ea41bfa3432ab1b0341edd" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">576</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact_37911c7ca6624002bfaf05ba21ce7c52" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">395</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year including interest and penalties</div>
          </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties" id="Fact_11bb272029974d2484a971ee3d5a6e7c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,720</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties" id="Fact_53a0b53fd47c46a1a3d5bb57ab4faa66" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,908</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties" id="Fact_bbf269377d5d4204ad7cbd1bd3389a71" contextRef="c20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,599</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c46" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c47">
<div><br/>
    </div>
</ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">66</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:nonNumeric name="plab:ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" id="Text_4b39f179de6b47dba15899abff2a435e" contextRef="c20231101to20241031" escape="true" continuedAt="Text_70312944fa1e4d8296537e3b17fc2df81"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c47" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c48">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The following table presents additional information
        on our uncertain tax positions, as of the balance sheet dates.</span></div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c48" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c49"><ix:continuation id="Text_70312944fa1e4d8296537e3b17fc2df81">
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </div>

      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
              <div style="text-align: left;">Unrecognized tax benefits that, if recognized, would impact the effective tax rate</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div>$<br/>
              </div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" id="Fact_2535c73e8fdf4a7da7c77dd972948a26" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,720</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div>$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" id="Fact_4552c594d4b04e7c88a210e9a9421454" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,908</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">
              <div style="text-align: left;">Accrued interest and penalties related to uncertain tax positions</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">
              <div>$<br/>
              </div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">
              <div><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact_2d7412674deb4f4abb57a1248fc91205" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,028</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">
              <div>$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" colspan="1">
              <div><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact_0982a5ad2f984d2d8ce31a49b61670d7" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">576</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
       </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c49" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c50">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c50" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c51">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Although the timing of the reversal of uncertain tax positions may be uncertain, as they can be dependent upon the settlement of tax audits or
      expirations of statutes of limitations, the Company believes that the amount of uncertain tax positions (including accrued interest and penalties, and net of tax benefits) that may be resolved over the next twelve months is $<ix:nonFraction name="us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" id="Fact_237a14cf53404fe59109233f486b0ba7" contextRef="c20241031" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.4</ix:nonFraction> million. Resolution of these uncertain tax positions may result from either or both the lapses of statutes of limitations and tax settlements. The
      Company is no longer subject to tax authority examinations in the U.S., major foreign, or state tax jurisdictions for years prior to fiscal year 2019.</div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c51" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c52">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c52" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c53">
<div><span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"> Income Tax Payments and Refunds </span></div>
</ix:continuation>
    <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c53" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c54">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
      </div>
</ix:continuation>

      <ix:nonNumeric name="plab:ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" id="Text_3506e7cac83f4a4395e4fca041441d7b" contextRef="c20231101to20241031" escape="true" continuedAt="Text_9454581b34f04156b66ac795bcb1a1e71"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c54" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c55">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">The table below presents income taxes paid and refunds of income taxes received during the reporting periods.</span> </div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_9454581b34f04156b66ac795bcb1a1e71" continuedAt="Text_9454581b34f04156b66ac795bcb1a1e72"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c55" continuedAt="Text_946ec9391b9c4127ab3acce40324dd6c56">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> <br/>
        </span></div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_9454581b34f04156b66ac795bcb1a1e72"><ix:continuation id="Text_946ec9391b9c4127ab3acce40324dd6c56">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="10">
              <div style="text-align: center; font-weight: bold;">Year Ended</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2024<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2023<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2022<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);">
              <div style="text-align: left;">Income taxes paid</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div>$<br/>
              </div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div><ix:nonFraction name="us-gaap:IncomeTaxesPaid" id="Fact_0a868cc1eb8e49e781aebed54ffa00f4" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">62,520</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div>$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div><ix:nonFraction name="us-gaap:IncomeTaxesPaid" id="Fact_cc7d1ce0fdbe440b9fbe58773309c9ca" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,362</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div>$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" colspan="1">
              <div><ix:nonFraction name="us-gaap:IncomeTaxesPaid" id="Fact_ff7c39b8bd304d0eaa40d6724a8fac9a" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">37,770</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">
              <div style="text-align: left;">Income tax refunds received</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">$ <br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">
              <div><ix:nonFraction name="us-gaap:ProceedsFromIncomeTaxRefunds" id="Fact_b4555f48bf36467dbd5453461fc5917e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,519</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">$ <br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">
              <div><ix:nonFraction name="us-gaap:ProceedsFromIncomeTaxRefunds" id="Fact_5f955577ce564652bef19f91f0907a69" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">485</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">$ <br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" colspan="1">
              <div><ix:nonFraction name="us-gaap:ProceedsFromIncomeTaxRefunds" id="Fact_07abb26806cd4bd9a5107e4a5311ba58" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">388</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
       </div>


    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:EarningsPerShareTextBlock" id="Text_ac8b31ba1031434ab9b417a5b818e71b" contextRef="c20231101to20241031" escape="true" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb1">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 15 - EARNINGS PER SHARE</div>
</ix:nonNumeric>
    <ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb1" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb2">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="Text_551b862d87f34cf8b6592cbe22ac8217" contextRef="c20231101to20241031" escape="true" continuedAt="Text_e5d52a84a76d42e2821d2ad1f439d8241"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb2" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb3">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The calculation of basic and diluted earnings per share is presented below.<br/>
    </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_e5d52a84a76d42e2821d2ad1f439d8241" continuedAt="Text_e5d52a84a76d42e2821d2ad1f439d8242"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb3" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb4">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e5d52a84a76d42e2821d2ad1f439d8242"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb4" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb5">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top;"/>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px; font-weight: bold;" rowspan="1">&#160;(in thousands, except for per share data)</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" rowspan="1">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" rowspan="1">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" rowspan="1">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_5084cc6c70584f8a9a44d38cc4e15aab" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">130,688</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_92db5e56a340413daa156bc5f36245d8" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">125,485</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_b5bef44ef36e4706b51310136b6c6605" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">118,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:DilutiveSecurities" id="Fact_0bc8d185e4b74b8a8030430e6bab835e" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:DilutiveSecurities" id="Fact_999c3d5142d743ea9e6c8adffe67640c" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:DilutiveSecurities" id="Fact_b908a29629b64d04b81da2f88693bc9f" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Earnings used for diluted earnings per share</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToParentDiluted" id="Fact_2c625dbdac5a470d84d87407201a4985" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">130,688</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToParentDiluted" id="Fact_fe56a8ceee834998bb3a22929e9f0095" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">125,485</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToParentDiluted" id="Fact_3851ac71f54e48798bbb4feb102a75ca" contextRef="c20211101to20221031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">118,786</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares outstanding:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;">Basic</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_5639aed80e4f4cb2aba16dd706b14e49" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,726</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_60aba0fd4ce04e80827872f550ceeef7" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,139</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_083acf81eaee4fe5985153217b0b3fb0" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">60,559</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.15pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities:</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 64%; padding-bottom: 2px;">
            <div style="text-align: left; text-indent: -18pt; margin-left: 44.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based payment awards</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_7039baa479524861b261bb985fa2bb9b" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">665</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_42c1ade69285433b9ade704fef520ff3" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">616</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_7121d933e5bc4d2bb0aae531d5574019" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">630</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Potentially dilutive common shares</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" id="Fact_084cb98b0a8746d68a1aa594c5fc7ea9" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">665</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" id="Fact_e32841884a96409c914da660f3c69a33" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">616</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" id="Fact_bf1a474899534e8ea61659b0623e43ab" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">630</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares-Diluted</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_dbcb03e249b146108bacc47fca285afa" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">62,391</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_c13a43f052bd4504936e206e3623357b" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,755</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_01edae7bd66f4f61a7aef0cd3289651b" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">61,189</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;"><span style="font-weight: bold;">Earnings per share:</span> </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Basic</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_50f12d77f4714ad5994d89c3776753ec" contextRef="c20231101to20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.12</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_938f49c1398b42a09ffeb09f68092974" contextRef="c20221101to20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.05</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_eaaaab48f85c4ea0bb8146cd5fcfc863" contextRef="c20211101to20221031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.96</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Diluted</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_4f03d2e87658458c944a6988e1eb201e" contextRef="c20231101to20241031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.09</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_45d0eae0ad3c46c8b9f66063120845bb" contextRef="c20221101to20231031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">2.03</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_96b75983a9f34dfb98fcec733566d08c" contextRef="c20211101to20221031" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.94</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <div>
      <ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb5" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb6">
<div><br/>
      </div>
</ix:continuation>
      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">67</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" id="Text_07fe16fccc334787bd24e5ddb6634d86" contextRef="c20231101to20241031" escape="true" continuedAt="Text_c1fa4bc0b16546f88c4a7359d0e488161"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb6" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb7">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below sets forth the outstanding weighted-average share-based payment awards that were excluded from the calculation of
      diluted earnings per share because their exercise price exceeded the average market value of the common shares for the period or, under application of the treasury stock method, they were otherwise determined to be antidilutive.<br/>
    </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_c1fa4bc0b16546f88c4a7359d0e488161" continuedAt="Text_c1fa4bc0b16546f88c4a7359d0e488162"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb7" continuedAt="Text_910ca7e3e64247aea7c55ae838a0dacb8">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_c1fa4bc0b16546f88c4a7359d0e488162"><ix:continuation id="Text_910ca7e3e64247aea7c55ae838a0dacb8">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"> </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share based payment awards</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_b34fd80a45df4b3781f4d09e44e8b20a" contextRef="c20231101to20241031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">371</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_15986ccf38a7489187c47177381898b0" contextRef="c20221101to20231031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">136</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_3e64fa30c74a4c288768c97e61941734" contextRef="c20211101to20221031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">314</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total potentially dilutive shares excluded</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_c56db55e6d6e4b7390cd2903ec48cc6c" contextRef="c20231101to20241031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">371</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_87cf30b4a548448b9adf726f6f74b82d" contextRef="c20221101to20231031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">136</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_bc1f6c36903c4e73ba7ffb6a2e81bb33" contextRef="c20211101to20221031" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">314</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <div> </div>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="Text_5d0edaac3db44d69b3a1e3bbf1c1822e" contextRef="c20231101to20241031" escape="true" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa1">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 16 - COMMITMENTS AND CONTINGENCIES</div>
</ix:nonNumeric>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa1" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa2">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa2" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa3">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa3" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa4">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:nonNumeric name="srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock" id="Text_d4305349dd784f02925fd388492aa24a" contextRef="c20231101to20241031" escape="true" continuedAt="Text_97fb339199204febba5a38f8afa2a6051"><ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa4" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the Company&#8217;s unrecognized unconditional purchase obligations, which are mainly payments for the acquisition of property, plant and
        equipment, with a remaining term in excess of <ix:nonNumeric name="plab:MinimumRemainingTermOfPlantAndEquipment" id="Fact_9d60e4c0c078446db1a4222c492d71f2" contextRef="c20231101to20241031" format="ixt-sec:durwordsen">one year</ix:nonNumeric> as of October 31, 2024. The amounts below do not include the Company&#8217;s
        commitments under the Company&#8217;s debt and lease arrangements, which are presented in Notes 8 and 11, respectively.</div>
</ix:continuation></ix:nonNumeric>
    </div>

    <ix:continuation id="Text_97fb339199204febba5a38f8afa2a6051" continuedAt="Text_97fb339199204febba5a38f8afa2a6052"><ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa5" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa6">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_97fb339199204febba5a38f8afa2a6052" continuedAt="Text_97fb339199204febba5a38f8afa2a6053"><ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa6" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa7">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_97fb339199204febba5a38f8afa2a6053" continuedAt="Text_97fb339199204febba5a38f8afa2a6054"><ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa7" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa8">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa8" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa9"><ix:continuation id="Text_97fb339199204febba5a38f8afa2a6054">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <table cellspacing="0" cellpadding="0" style="width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 2px; border-bottom-style: solid;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Unrecognized </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Commitments</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
                </span> </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueInNextTwelveMonths" id="Fact_cb21e0b19632473fad30090e2bcd26ab" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">70,992</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
                </span> </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueInSecondYear" id="Fact_f6aa6931c54547dca734587a7e926f75" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,052</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
                </span> </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueInThirdYear" id="Fact_65e3caf8b39b44fc81bdc5f20601c9ad" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
                </span> </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueInFourthYear" id="Fact_36712205c7214f58bad020fc70902746" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2029<br/>
                </span> </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueInFifthYear" id="Fact_b3db8a46e9e84439bb68548544ba13fd" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%; padding-bottom: 2px;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Thereafter</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligationDueAfterFifthYear" id="Fact_606bc26c46fa4dcab1fd09482f587494" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractualObligation" id="Fact_f5abb9af734f4c2f8821b9b30e63aa34" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,046</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
       </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa9" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa10">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa10" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa11">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa11" continuedAt="Text_9ab058ef89ca428cb830cf4b716763fa12">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_9ab058ef89ca428cb830cf4b716763fa12">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We are subject to various claims that arise in the ordinary course of business. The Company believes that the Company&#8217;s potential
      liability under such claims, individually and in the aggregate, will not have a material effect on the Company&#8217;s consolidated financial statements.&#160; As of October 31, 2024, and October 31, 2023, the Company was not involved in environmental
      litigation to which a government was a party.</div>
</ix:continuation>
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span>
    </div>
 </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <br/>
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">68</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:OtherComprehensiveIncomeNoncontrollingInterestTextBlock" id="Text_767f2956e7754ae78bf1d4a402d9e81a" contextRef="c20231101to20241031" escape="true" continuedAt="Text_2e7f927163d446e9a494423d93ec7a351">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 17 - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</div>
</ix:nonNumeric>
    <ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a351" continuedAt="Text_2e7f927163d446e9a494423d93ec7a352">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="Text_2814da2b64654447808bce34534ace01" contextRef="c20231101to20241031" escape="true" continuedAt="Text_fc142e5c8ae348af8d6a5118d579d33b1"><ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a352" continuedAt="Text_2e7f927163d446e9a494423d93ec7a353">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables set forth the&#160;changes in the Company&#8217;s accumulated other comprehensive (loss) income by component (net of tax
      of $<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossTax" id="Fact_e9e7cdeda17440c6aba1d2d5febbf5f4" contextRef="c20221101to20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossTax" id="Fact_253fb9def1ad4025a742e8dc5fbff12a" contextRef="c20231101to20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">0</ix:nonFraction></ix:nonFraction>)&#160;for the years ended October 31, 2024, and October 31, 2023.</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_fc142e5c8ae348af8d6a5118d579d33b1" continuedAt="Text_fc142e5c8ae348af8d6a5118d579d33b2"><ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a353" continuedAt="Text_2e7f927163d446e9a494423d93ec7a354">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_fc142e5c8ae348af8d6a5118d579d33b2" continuedAt="Text_fc142e5c8ae348af8d6a5118d579d33b3"><ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a354" continuedAt="Text_2e7f927163d446e9a494423d93ec7a355">
<table cellspacing="0" cellpadding="0" border="0" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="10">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended October 31,
              2024</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Translation</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Adjustments</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Other</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_794b0cf24998408eb2b3b54f686bcdc9" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,044</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_16a5ecb782d44f66bb6b3ade146d422a" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">690</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_30b2288106fd4bfbab9e27ba7cb3d8e0" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,734</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_451a527689c947cea3b0a4e204484705" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,630</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_417f8a92d3bc4cd8ad4f70b794556c98" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">81</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_12080e297ce84ea7af5298e332bcc431" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,549</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive (loss) income attributable to noncontrolling interests</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_d772b6ff9eba46d2b98990ddf63ca7bb" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,173</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_3d504637be08499cb1af143a8369c35c" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">39</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_e0afe13001a14bd08ec1b26e7734231d" contextRef="c20231101to20241031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,134</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2024</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_4d034eea21ed4ed4b63fa6585af9b45e" contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">85,587</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_d47f47a34ddb4e199e2f2a79d0c92ff3" contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">732</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f474e94b90274f1d8906436192a38225" contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">86,319</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_fc142e5c8ae348af8d6a5118d579d33b3" continuedAt="Text_fc142e5c8ae348af8d6a5118d579d33b4"><ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a355" continuedAt="Text_2e7f927163d446e9a494423d93ec7a356">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_fc142e5c8ae348af8d6a5118d579d33b4"><ix:continuation id="Text_2e7f927163d446e9a494423d93ec7a356">
<table cellspacing="0" cellpadding="0" border="0" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"/>

    <td valign="bottom" style="text-align: center; font-weight: bold; vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; text-align: center; font-weight: bold; border-bottom: #000000 solid 2px;" rowspan="1" colspan="10">Year Ended October 31, 2023</td>

    <td valign="bottom" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px;" rowspan="1" colspan="2">
            <div style="font-weight: bold; text-align: center;">Foreign Currency<br/>
            </div>
            <div style="text-align: center;"><span style="font-weight: bold;">Translation<br/>
              </span></div>
            <div style="text-align: center;"><span style="font-weight: bold;">Adjustments</span><br/>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" rowspan="1" colspan="2"><span style="font-weight: bold;">Other</span><br/>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" rowspan="1" colspan="2"><span style="font-weight: bold;">Total</span><br/>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2022</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_a2ea2cc8ae3b4c51aa6831d488d56fe2" contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">97,790</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_0563f7cf9c1545928135236f082cc45f" contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">666</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5e66c2169d924aa1820d4f1860893c26" contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">98,456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 64%;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_7e354bfb2d78495f8fff001f37625d5a" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,615</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_90539c9e9a794c51930bb1333eb47845" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" id="Fact_e9913f6bed0d47049a0cd22f3f55c782" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,612</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss) attributable to noncontrolling interests</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_22b6abca3e3946758c2893936fb0c5b4" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4,131</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_78edab7bef894c76b95a78efe577b15a" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">21</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" id="Fact_a45e533f47724121856cf2f4c122e9a3" contextRef="c20221101to20231031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">4,110</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_546516405021450ba190f18566be02f0" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,044</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_3062deafed0c4a79af41bd98fdb7253e" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">690</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5ea5a1b958764c1a8e8ed91073397bb0" contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">88,734</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <div><br/>
      <br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:ConcentrationRiskDisclosureTextBlock" id="Text_d8c5564e21e6460ca38fd17a49016957" contextRef="c20231101to20241031" escape="true" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f01">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 18 - RISKS AND CONCENTRATIONS<br/>
    </div>
</ix:nonNumeric>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f01" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f02">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f02" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f03">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Financial instruments that potentially subject the Company to credit risk principally consist of trade accounts receivable and
      short-term cash investments. The Company sells the Company&#8217;s products primarily to semiconductor and FPD manufacturers in Asia, North America, and Europe. The Company believes that the concentration of credit risk in the Company&#8217;s trade receivables
      is substantially mitigated by the Company&#8217;s ongoing credit evaluation process and relatively short collection terms. The Company does not generally require collateral from customers. The Company establishes an allowance for credit losses based upon
      factors surrounding the credit risk of specific customers, historical trends, and other information.</div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f03" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f04">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f04" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f05">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Our cash and cash equivalents are deposited in several financial institutions, including institutions located within all of the
      countries in which the Company manufactures photomasks. Portions of deposits in some of these institutions may exceed the amount of insurance available for such deposits at these institutions. As these deposits are generally redeemable upon demand
      and are held by high quality, reputable institutions, the Company considers them to bear minimal credit risk. The Company further mitigates credit risks related to the Company&#8217;s cash and cash equivalents by spreading such risk among a number of
      institutions.</div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f05" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f06">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" id="Text_73456f3dee6e4b6f96bd2b68bcedbcb0" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember" escape="true" continuedAt="Text_fe9557dede184d7294445432c10a63bd1"><ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f06" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f07">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents the percentages of the
        Company&#8217;s net accounts receivable attributable to customers that accounted for more than ten percent of the total balance as of the balance sheet dates.</span> </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f07" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f08"><ix:continuation id="Text_fe9557dede184d7294445432c10a63bd1">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_6e0583d9208f4ac7842f45a237874f85" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">19.2</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_32c78322d75647e7a64a1ced15c48b68" contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">21</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 76%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_045f204ec346428cb99df21272fc88b0" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember" unitRef="U005" decimals="3" scale="-2" format="ixt:num-dot-decimal">14.6</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_5508fb3dfd324a32a2782c142148171a" contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">10</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>


</table>
       </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f08" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f09">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">69</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" id="Text_8473fcf7ffc94168820827444ce6897e" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember" escape="true" continuedAt="Text_b9f2d0fb57994a4ea159bba5e3c2e85a1"><ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f09" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f010">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> The following table presents the percentages of the Company&#8217;s revenue attributable to customers that accounted for more than ten
      percent of the total revenue during the reporting periods. </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f010" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f011"><ix:continuation id="Text_b9f2d0fb57994a4ea159bba5e3c2e85a1">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" rowspan="1" style="vertical-align: top; text-align: center; border-bottom: #000000 solid 2px;"><span style="font-weight: bold;">Year Ended</span></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_514f36133c654a5da7ad6b6a2984132f" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">15</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_7a09939ea1b7458eb674f98e6f4ef04c" contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">14</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_e09c35243f044c75af1d10c66b4258e6" contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">15</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">%</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_f24f67b0f61246f89f841c888c18a12b" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">12</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_e9ae70a929784141bf11ef3510270a0d" contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">10</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_fd792c9433ed4475abe4b881bf2b3cb4" contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">11</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">%</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">Customer C<br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_6d91743d94be4de78ae8d1182c5f450b" contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">9</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">%</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_2185aab3f1f74b00a77c33c39c658b4e" contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">13</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">%</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_cfa79419cc2946038690a2bc2972475c" contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember" unitRef="U005" decimals="2" scale="-2" format="ixt:num-dot-decimal">5</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">%</td>

  </tr>


</table>
       </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f011" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f012">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f012" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f013">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We operate as a single reporting segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing
      microscopic images of electronic circuits for use in the fabrication of ICs and FPDs. </div>
</ix:continuation>
    <ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f013" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f014">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>
</ix:continuation>
    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <ix:nonNumeric name="us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock" id="Text_70c9b77d36dd49d38b76f3e9e7041cfd" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f9ce4dc4e3ef46539d6041978aa687141"><ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f014" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f015">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of the balance sheet dates, the Company&#8217;s long-lived assets and net assets were, by geographic area, as presented below.</div>
</ix:continuation></ix:nonNumeric>
      <ix:continuation id="Text_f9ce4dc4e3ef46539d6041978aa687141" continuedAt="Text_f9ce4dc4e3ef46539d6041978aa687142"><ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f015" continuedAt="Text_090c2470d80a4a359545a4d2aeab17f016">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_f9ce4dc4e3ef46539d6041978aa687142"><ix:continuation id="Text_090c2470d80a4a359545a4d2aeab17f016">
<table cellspacing="0" cellpadding="0" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" rowspan="1" colspan="6">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" rowspan="1" colspan="6">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">China</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_b7178689c4dc408e9e380ebecf7affe2" contextRef="c20241031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">256,072</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_1d5230c17f564a93bde7b99fe7047d00" contextRef="c20241031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">379,460</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_6a46f87805b54fb7bc7a90f261486f0f" contextRef="c20231031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">249,357</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_d12b1864cf454fe5834bb157c7fe561c" contextRef="c20231031_StatementGeographicalAxis_CN" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">317,409</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Europe and Other</div>
              </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_59232704d5254385be73a50b2a75e1e2" contextRef="c20241031_StatementGeographicalAxis_EuropeAndOtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,010</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AssetsNet" id="Fact_f12f4a2968dd4f57a6d68d09152d9f67" contextRef="c20241031_StatementGeographicalAxis_EuropeAndOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">420</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_a9b6da4a18014bdd8978ebf471969825" contextRef="c20231031_StatementGeographicalAxis_EuropeAndOtherMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,294</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AssetsNet" id="Fact_ea18ac72044447c8a7ac0c90f2045fe7" contextRef="c20231031_StatementGeographicalAxis_EuropeAndOtherMember" unitRef="U001" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,175</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_e4683d5d14544f5184d1b4a6cb26be7d" contextRef="c20241031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">144,634</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_78a860463a3c4aafbfecaf12d832f414" contextRef="c20241031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">217,890</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_b28a1135329e4b0ba229424ca3001516" contextRef="c20231031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">140,733</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_7d8298a5c83e49488ad381157ed87703" contextRef="c20231031_StatementGeographicalAxis_US" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">188,712</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_9bf21801f2c84f9c9adaae7ce3136872" contextRef="c20241031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">123,631</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_61e801b49a4f4d09a1a9d572c01eae52" contextRef="c20241031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">315,597</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_720ab915a6d546aea5438c4220b3e87d" contextRef="c20231031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">119,438</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_a7b9e9fcf78b4d22a892cb077fb3ba49" contextRef="c20231031_StatementGeographicalAxis_KR" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">281,941</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_2fee1460be1a4a1db273f0a35361518c" contextRef="c20241031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">213,910</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_4728063295704e0c8e35abcd620f9674" contextRef="c20241031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">568,232</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_c2c6ba18d20b4f0db304610a1a37e809" contextRef="c20231031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">199,313</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_065c94ef7e544f66bb3ba8f77bc8e611" contextRef="c20231031_StatementGeographicalAxis_TW" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">489,722</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 52%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_10b2757182ce42609b21078938275c9d" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">745,257</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_9ab9af417ce44635af5618f40fc66d4c" contextRef="c20241031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,480,759</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NoncurrentAssets" id="Fact_799a4abb081e4d718c5f5a70363b9a70" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">716,135</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNet" id="Fact_d63fdd9470a8499e87afe8124628740a" contextRef="c20231031" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,275,609</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
       </div>


    <div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="Text_b336fdf7e776469b8c68e316843a0b5b" contextRef="c20231101to20241031" escape="true" continuedAt="Text_08407a624ac34e3d9e5004700f2874191">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 19 - RELATED PARTY TRANSACTIONS</div>
</ix:nonNumeric>
    <ix:continuation id="Text_08407a624ac34e3d9e5004700f2874191" continuedAt="Text_08407a624ac34e3d9e5004700f2874192">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_08407a624ac34e3d9e5004700f2874192" continuedAt="Text_08407a624ac34e3d9e5004700f2874193">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Our chief executive officer is related to an individual in a position of authority at one of the Company&#8217;s largest customers. The
      Company recorded revenue from this customer of $<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_7e7071b3c6f041489770dbc3b47881f5" contextRef="c20231101to20241031_MajorCustomersAxis_MajorCustomer1Member" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">127.0</ix:nonFraction> million, $<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ce25ef03e72b4eb387c9556db731f52b" contextRef="c20221101to20231031_MajorCustomersAxis_MajorCustomer1Member" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">126.5</ix:nonFraction> million and $<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2c62a013658947af996143399608cc6a" contextRef="c20211101to20221031_MajorCustomersAxis_MajorCustomer1Member" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">119.0</ix:nonFraction> million, in 2024, 2023, and 2022,
      respectively. As of October 31, 2024, and October 31, 2023, the Company had accounts receivable of $<ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_a87d3b918bf049f6a007b7c8f68d36b9" contextRef="c20241031_MajorCustomersAxis_MajorCustomer1Member" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">38.8</ix:nonFraction> million and $<ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_22d5fab991514476a1e9f8fac8faf093" contextRef="c20231031_MajorCustomersAxis_MajorCustomer1Member" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">41.5</ix:nonFraction> million, respectively, from this customer.</div>
</ix:continuation>
    <ix:continuation id="Text_08407a624ac34e3d9e5004700f2874193" continuedAt="Text_08407a624ac34e3d9e5004700f2874194">
<div><br/>
    </div>
</ix:continuation>
    <ix:continuation id="Text_08407a624ac34e3d9e5004700f2874194">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The Company believes that the terms of the transaction described above was negotiated at arm&#8217;s length and were no less favorable to
      the Company than terms the Company could have obtained from unrelated third parties.<br/>
    </div>
</ix:continuation>

    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:FairValueDisclosuresTextBlock" id="Text_d145303bc68144ad8f7762dc483566d8" contextRef="c20231101to20241031" escape="true" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b21">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 20 - FAIR VALUE MEASUREMENTS</div>
</ix:nonNumeric>
    <ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b21" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b22">
<div><br/>
    </div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:FairValueMeasurementPolicyPolicyTextBlock" id="Text_47e110b317724575bc6fd5af26bd3214" contextRef="c20231101to20241031" escape="true" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61181"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b22" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b23">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The accounting framework for determining fair value includes a hierarchy for ranking the quality and reliability of the information
      used to measure fair value, which enables the reader of the financial statements to assess the inputs used to develop those measurements. The fair value hierarchy consists of three tiers as follows:</div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61181" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61182"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b23" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b24">
<div><br/>
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61182" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61183"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b24" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b25">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Level 1- These are investments where values are based on unadjusted quoted prices for identical assets in an active market the Company has the ability to access.<br/>
      </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61183" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61184"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b25" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b26">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation></ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">70</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61184" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61185"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b26" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b27">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 2- These are investments where values are based on quoted market prices that are not active or model derived valuations in which all significant inputs are
        observable in active markets.<br/>
      </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61185" continuedAt="Text_24ff09924bc64f92ad2dde2ce5ff61186"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b27" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b28">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_24ff09924bc64f92ad2dde2ce5ff61186"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b28" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b29">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 3- These are investments where values are derived from techniques in which one or more significant inputs are unobservable.<br/>
      </span></div>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b29" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b210">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation>

    <ix:nonNumeric name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock" id="Text_f36f9f8a7ac347a78587cb836cde9f75" contextRef="c20231101to20241031" escape="true" continuedAt="Text_35800f774f9c4d3f899ff5d1705baa801"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b210" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b211">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> The following are the major categories of assets measured at fair value on a recurring basis using quoted prices in active markets for identical assets (Level 1),
        significant other observable inputs (Level 2) and significant unobservable inputs (Level 3):</span><br/>
    </div>
</ix:continuation></ix:nonNumeric>
    <ix:continuation id="Text_35800f774f9c4d3f899ff5d1705baa801" continuedAt="Text_35800f774f9c4d3f899ff5d1705baa802"><ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b211" continuedAt="Text_e85bcfe7d23248d895a2337fdd0407b212">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_e85bcfe7d23248d895a2337fdd0407b212"><ix:continuation id="Text_35800f774f9c4d3f899ff5d1705baa802">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
      <table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: middle; padding-bottom: 2px; width: 36%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> October 31, 2024</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 36%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: middle; white-space: nowrap;">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 36%; background-color: rgb(204, 238, 255);">
              <div style="margin-left: 9pt; text-indent: -9pt;">U.S. Government Securities <br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_795ac4a74d314581a4f04cd45657310d" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_9d2c9ce6e2f148e0b9a096d0ef90c483" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_8b9116f7efdb4364aa6d051749a843c3" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_59e1c2544407472087bc2a9532dea929" contextRef="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_6ea3b993f00c4fa785a1c75fca81768f" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,915</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_21f9a09170974ab3a888245173a1aa1a" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_7e249b0dc36741c5be111d251a4cc751" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_f6932d2d12674762b269ce9bebdfcdea" contextRef="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,915</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 36%;">
              <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Time deposits</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_7a6ee77b933d4c0a992d00610dc71b5c" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_a714a40ac0e747b59b27cdd96e938efc" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_fc9a752ec5ef41afae0adada5e45914d" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_5387f230c4cd4930b9cebe4ac552a1c4" contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_63469b69f1a34240818580258fca3f67" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_f3300d94876d41ff945cafab52422f10" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_7e7e8e4d1c7e4554bed7da36735aa9b0" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_b32f181232f74b6db622d3ef2c548ca0" contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: middle; width: 36%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" rowspan="1">Money market funds <br/>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_fcbca476f7e043e79d48e935b76b727e" contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,322</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_a84c2d6015bb4cf587955e0fe513634b" contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_c43e86b75df9498596d81f5503299099" contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_e7576c43afab42b992c2adfab7ba8078" contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,322</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_956d6c1f189940139826b2f363f00d22" contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,187</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_a3519d15be6148ba98a48d4f65cee692" contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_bc6c952f07f44f119d10bba96c364989" contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" rowspan="1"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_ba0df7add60b4f72851691050616815f" contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,187</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 4px;">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">Total</div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_e74f24c9b12c480e8095b81c5d8b0883" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,322</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_b350dc5886324397a32baf29ed301db1" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,184</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_90cbfe39aa974aed906eafa6540e3c3a" contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_e6a6145afda140618734f74071897721" contextRef="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">78,506</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_c7a02a749a8548bcb115fef3fe27162a" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,102</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_e1788bccf15843e386c0bcea84024a3b" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_2f21d99ff96944279df21f5cd22ed6dd" contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">$</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" id="Fact_a875c4b94542422a933daa341d26cd0f" contextRef="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,102</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
       </div>
</ix:continuation></ix:continuation>
    <div><br/>
    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <ix:nonNumeric name="us-gaap:TreasuryStockTextBlock" id="Text_1b020527e14340f99f40e72d8a1588f0" contextRef="c20231101to20241031" escape="true" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 21 - SHARE REPURCHASE PROGRAMS</div>
</ix:nonNumeric>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef1" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef2">
<div><span style="font-family: 'Times New Roman';"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef2" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef3">
<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef3" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef4">
<div><span style="font-family: 'Times New Roman';"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef4" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef5">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In September 2020, the Company&#8217;s Board of Directors authorized the repurchase of up to $<ix:nonFraction name="srt:StockRepurchaseProgramAuthorizedAmount1" id="Fact_0b78d2da22254bda815a2623ce768328" contextRef="c20200930_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">100</ix:nonFraction> million of its common stock,<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> pursuant to a repurchase plan under Rule 10b5-1 of the Securities Act.</span> The repurchase authorization by the Board of Directors has no expiration date, does not obligate us to acquire any
        common stock, and is subject to market conditions. <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Share repurchases under this authorization commenced</span> on <ix:nonNumeric name="plab:StockRepurchaseProgramCommencementDate" id="Fact_dca8b73c390c47bf9b0fa57ff02a6c61" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember" format="ixt:date-monthname-day-year-en">September 16, 2020</ix:nonNumeric>. </span></span>The most recent 10b5-1 plan expired on <ix:nonNumeric name="srt:StockRepurchaseProgramExpirationDate" id="Fact_112bad651a9a4872a10cc906e6ecd72c" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember" format="ixt:date-monthname-day-year-en">September 15, 2022</ix:nonNumeric>, and has not been renewed.</span> </span>In 2022, we repurchased <ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_1da042b209f44a3c9a348f5b759d01b3" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction>
        million shares at a cost of $<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_9d3ee4953e0e40849617ae2e6016a43e" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.5</ix:nonFraction> million (an average of $<ix:nonFraction name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" id="Fact_cfff9e3f8bef4a189e9ed89d4e85e71e" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">13.43</ix:nonFraction> per share) and, since the program&#8217;s inception, we have repurchased <ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_aba49fe316fc475fae90a84dfdb7c190" contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.8</ix:nonFraction> million shares at a cost
        of $<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_9fdde8c19a8f40c2a6ce8885413c3855" contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">68.3</ix:nonFraction> million (an average of $<ix:nonFraction name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" id="Fact_8a62840c222a44ec992fea36adca68cc" contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">11.70</ix:nonFraction>
        per share). All shares repurchased under the program have been retired</span> prior to the end of the fiscal year in which they were purchased. <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">On August 28, 2024, the Board of Directors authorized an increase to the Company&#8217;s existing share repurchase program from the
        remaining $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" id="Fact_7e548ea9a1a54546aec036a3689504e6" contextRef="c20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">31.7</ix:nonFraction></span> million up to $<ix:nonFraction name="srt:StockRepurchaseProgramAuthorizedAmount1" id="Fact_d4b2a9b1b6ed4d388f826b01b5e07b31" contextRef="c20240828_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-6" scale="6" format="ixt:num-dot-decimal">100</ix:nonFraction> million
        under the Board of Director authorization. In 2024, we did <ix:nonFraction name="us-gaap:TreasuryStockSharesAcquired" id="Fact_d9b65b63313742849df72efd1893d029" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-6" scale="6" format="ixt-sec:numwordsen">no</ix:nonFraction>t repurchase any further shares as part of this program.</span> </div>
</ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef5" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef6">
<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>
</ix:continuation><ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef6" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef7"><ix:nonNumeric name="us-gaap:ScheduleOfTreasuryStockByClassTextBlock" id="Text_0d7ba68a067648f68d4cb0b796536c0a" contextRef="c20231101to20241031" escape="true" continuedAt="Text_f06f96f7d421462589780f5f1c7940e11">
<div><span style="font-family: 'Times New Roman';"> </span>
    </div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef7" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef8"><ix:continuation id="Text_f06f96f7d421462589780f5f1c7940e11" continuedAt="Text_f06f96f7d421462589780f5f1c7940e12">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The table below presents information on the repurchase programs for the three most recent fiscal years<span style="font-family: 'Times New Roman';">.<br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef8" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef9"><ix:continuation id="Text_f06f96f7d421462589780f5f1c7940e12" continuedAt="Text_f06f96f7d421462589780f5f1c7940e13">
<div><span style="font-family: 'Times New Roman';"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef9" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef10"><ix:continuation id="Text_f06f96f7d421462589780f5f1c7940e13" continuedAt="Text_f06f96f7d421462589780f5f1c7940e14">
<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef10" continuedAt="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef11"><ix:continuation id="Text_f06f96f7d421462589780f5f1c7940e14" continuedAt="Text_f06f96f7d421462589780f5f1c7940e15">
<div><span style="font-family: 'Times New Roman';"> </span></div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_c1f3f5b6a63c4b0c831c01cd6eeee7ef11"><ix:continuation id="Text_f06f96f7d421462589780f5f1c7940e15">
<table cellspacing="0" cellpadding="0" border="0" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: top; padding-bottom: 2px;"><br/>
          </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-family: 'Times New Roman';">2024<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2023<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2022<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Number of shares repurchased</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_135ebbd4190844378a4d591a9955c4c9" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_fa233b8a3ed141dbb2dbe094770e09d4" contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockSharesRetired" id="Fact_45c6e06fab134569a9b9005f723759b3" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">187</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; font-family: 'Times New Roman';">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Cost of shares repurchased</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_caf6797242e041c8a606aab7c5604c50" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_5309100306594ce69cf5c37f716b6600" contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" id="Fact_3e512fee42ce455ca889edb82c73df5b" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,522</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; font-family: 'Times New Roman';">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: top; width: 64%; background-color: #CCEEFF;">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Average price paid per share</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" id="Fact_601d8638ab7e486c9cb740dcc3f0a423" contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U003" decimals="0" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" id="Fact_a38bf994afa94db7a14233c25e54b0b3" contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U003" decimals="0" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" id="Fact_bcd45494663745dbb48a1228cde776ef" contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">13.43</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
<div><span style="font-family: 'Times New Roman';"> </span>
    </div>

    <div><br/>
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">71</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <a id="CHANGESINANDDISAGREEMENTS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 9.</td>

    <td style="width: auto; vertical-align: top;">
              <div style="font-weight: bold; text-align: left;">CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE</div>
            </td>

  </tr>


</table>
      <div><br/>
      </div>

      <div style="text-indent: 18pt;">None.</div>

      <div><br/>
      </div>

      <a id="CONTROLSANDPROCEDURES"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 9A.</td>

    <td style="width: auto; vertical-align: top;">
              <div style="font-weight: bold; text-align: left;">CONTROLS AND PROCEDURES</div>
            </td>

  </tr>


</table>
      <div><br/>
      </div>

      <div style="font-weight: bold;">Evaluation of Disclosure Controls and Procedures</div>

      <div>&#160;</div>

      <div style="text-indent: 18pt;">Our management, with the participation of our Chief Executive Officer and Chief Financial Officer, evaluated the effectiveness of our disclosure controls and procedures as of October 31, 2024. We have established and
        currently maintain disclosure controls and procedures, as such term is defined in Rules 13a-15(e) and 15d-15(e) of the Exchange Act, designed to provide reasonable assurance that information required to be disclosed in our reports filed under the
        Exchange Act, is recorded, processed, summarized and reported within the time periods specified in the Securities and Exchange Commission&#8217;s rules and forms, and that such information is accumulated and communicated to management, including our
        chief executive officer and chief financial officer, as appropriate, to allow for timely decisions regarding required disclosure. In designing and evaluating disclosure controls and procedures, management recognized that any controls and
        procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives, and management necessarily was required to apply its judgment in evaluating the cost- benefit relationship of
        possible controls and procedures. Based on an evaluation of our disclosure controls and procedures as of October 31, 2024, our Chief Executive Officer and Chief Financial Officer concluded that, as of such date, our disclosure controls and
        procedures were effective at a reasonable assurance level.</div>

      <div><br/>
      </div>

      <div style="font-weight: bold;">Management&#8217;s Report on Internal Control over Financial Reporting</div>

      <div>&#160;</div>

      <div style="text-indent: 18pt;">Management is responsible for establishing and maintaining adequate internal control over financial reporting, as such term is defined in Rules 13a-15(f) and 15d-15(f) of the Exchange Act. Under the supervision and
        with the participation of our management, including our principal executive officer and principal financial officer, the Company conducted an evaluation of the effectiveness of the internal control over financial reporting based on criteria
        established in the Internal Control Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO).</div>

      <div>&#160;</div>

      <div style="text-indent: 18pt;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk
        that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. </div>

      <div>&#160;</div>

      <div style="text-indent: 18pt;">Management assessed the effectiveness of our internal control over financial reporting as of October 31, 2024, based on the criteria set forth by the COSO. Management, under the supervision and with the participation
        of our Chief Executive Officer and Chief Financial Officer, concluded that our internal control over financial reporting was effective as of October 31, 2024.</div>

      <div><br/>
      </div>

      <div style="text-indent: 18pt;">The Company&#8217;s independent registered public accounting firm, Deloitte &amp; Touche LLP, has audited the effectiveness of the Company&#8217;s internal control over financial reporting as of October 31, 2024, as stated in
        their report on page 71 of this Form 10-K.</div>

      <div>&#160;</div>

      <div style="font-weight: bold;">Changes in Internal Control over Financial Reporting</div>

      <div><br/>
      </div>

      <div style="text-indent: 18pt;">There were no changes to our internal control over financial reporting during 2024 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</div>

      <div> <br/>
      </div>

      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">72</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

      <!--PROfilePageNumberReset%Num%74%%%-->
      <div style="font-weight: bold;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</div>

      <div><br/>
      </div>

      <div>To the shareholders and the Board of Directors of Photronics, Inc.</div>

      <div><br/>
      </div>

      <div style="font-weight: bold;">Opinion on Internal Control over Financial Reporting</div>

      <div><br/>
      </div>

      <div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">We have audited the internal control over financial reporting of Photronics, Inc., and subsidiaries (the &#8220;Company&#8221;) as of October 31, 2024, based on
          criteria established in <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Internal Control &#8212; Integrated Framework (2013) </span>issued by the Committee of Sponsoring Organizations of the Treadway Commission
          (COSO). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of October 31, 2024, based on criteria established <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">in Internal Control &#8212; Integrated Framework (2013) </span>issued by COSO.</div>

      </div>

      <div><br/>
      </div>

      <div style="margin-right: 9pt;">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated financial statements as of and for the year ended October 31, 2024, of
        the Company and our report dated December 18, 2024, expressed an unqualified opinion on those financial statements.</div>

      <div><br/>
      </div>

      <div style="font-weight: bold;">Basis for Opinion</div>

      <div><br/>
      </div>

      <div style="margin-right: 6pt;">The Company&#8217;s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting, included in the
        accompanying &#8220;Management&#8217;s Report on Internal Control Over Financial Reporting.&#8221; Our responsibility is to express an opinion on the Company&#8217;s internal control over financial reporting based on our audit. We are a public accounting firm registered
        with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</div>

      <div><br/>
      </div>

      <div style="margin-right: 2pt;">We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial
        reporting was maintained in all material respects. Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, testing and evaluating the design and operating
        effectiveness of internal control based on the assessed risk, and performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.</div>

      <div><br/>
      </div>

      <div style="font-weight: bold;">Definition and Limitations of Internal Control over Financial Reporting</div>

      <div><br/>
      </div>

      <div style="margin-right: 1pt;">A company&#8217;s internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external
        purposes in accordance with generally accepted accounting principles. A company&#8217;s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately
        and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted
        accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (3) provide reasonable assurance regarding prevention or timely detection
        of unauthorized acquisition, use, or disposition of the company&#8217;s assets that could have a material effect on the financial statements.</div>

      <div><br/>
      </div>

      <div style="margin-right: 8pt;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk
        that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</div>

      <div><br/>
      </div>

      <div>/s/ Deloitte &amp; Touche LLP</div>

      <div>Boston, Massachusetts</div>

      <div>December 18, 2024</div>

      <div>&#160;</div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">73</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div>
      <a id="OTHERINFORMATION"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 9B.</td>

    <td style="width: auto; vertical-align: top;">
              <div style="font-weight: bold; text-align: left;">OTHER INFORMATION</div>
            </td>

  </tr>


</table>
      <div><br/>
      </div>

      <div style="text-indent: 18pt;"><ix:nonNumeric name="ecd:Rule10b51ArrAdoptedFlag" id="Fact_ccce06ac74c1407886953391aeaacfc4" contextRef="c20240729to20241031" format="ixt:fixed-false"><ix:nonNumeric name="ecd:NonRule10b51ArrTrmntdFlag" id="Fact_b237309c73bc4a75831998ced5469996" contextRef="c20240729to20241031" format="ixt:fixed-false"><ix:nonNumeric name="ecd:NonRule10b51ArrAdoptedFlag" id="Fact_a0ce60854fcf482c9aff910105c904ca" contextRef="c20240729to20241031" format="ixt:fixed-false"><ix:nonNumeric name="ecd:Rule10b51ArrTrmntdFlag" id="Fact_79d7be6f0a3a4c0f897e74b0d8913a76" contextRef="c20240729to20241031" format="ixt:fixed-false">None</ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric>.</div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <div>
        <div>
          <div>
            <div>
              <div>
                <div>
                  <div> <br/>
                  </div>

                  <a id="DISCLOSUREREGARDINGFOREIG"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 9C.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTION</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">Not applicable.</div>

                  <div><br/>
                  </div>

                  <div style="text-align: center; font-weight: bold;">PART III</div>

                  <div><br/>
                  </div>

                  <a id="DIRECTORSEXECUTIVEOFFICER"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 10.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">The information as to Directors required by Items 401, 405 and 407(c)(3)(d)(4) and (d)(5) of Regulation S-K is set forth in our 2024 Definitive Proxy Statement which will be filed with the Securities and
                    Exchange Commission pursuant to Regulation 14A of the Exchange Act within 120 days after the end of the fiscal year covered by this Form 10-K under the caption &#8220;PROPOSAL 1 - ELECTION OF DIRECTORS,&#8221; &#8220;DELINQUENT SECTION 16(A) REPORTS&#8221; and
                    in the third paragraph under the caption &#8220;MEETINGS AND COMMITTEES OF THE BOARD&#8221;, and is incorporated in this report by reference. The information as to Executive Officers is included in our 2024 Definitive Proxy Statement under the
                    caption &#8220;EXECUTIVE OFFICERS&#8221; and is incorporated in this report by reference.</div>

                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">We have adopted a code of ethics that applies to our principal executive officer, chief financial officer or principal financial officer and principal accounting officer. A copy of the code of ethics may be
                    obtained, free of charge, by writing to the Vice President, General Counsel, and Corporate Secretary of Photronics, Inc. at 15 Secor Road, Brookfield, Connecticut 06804.</div>

                  <div><br/>
                  </div>

                  <a id="EXECUTIVECOMPENSATION"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 11.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">EXECUTIVE COMPENSATION</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">The information required by Item 402 of Regulation S-K and paragraph (e)(4) and (e)(5) of Item 407 is set forth in our 2024 Definitive Proxy Statement under the captions &#8220;EXECUTIVE COMPENSATION&#8221;, &#8220;CERTAIN
                    AGREEMENTS&#8221;, &#8220;DIRECTORS&#8217; COMPENSATION&#8221;, &#8220;COMPENSATION COMMITTEE INTERLOCKS AND INSIDER PARTICIPATION&#8221; and &#8220;COMPENSATION COMMITTEE REPORT ON EXECUTIVE COMPENSATION&#8221;, respectively, and is incorporated in this report by reference.</div>

                  <div style="text-indent: 18pt;"> <br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">74</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <div>
                    <a id="SECURITYOWNERSHIPOFCERTAI"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 54pt;">
                            <div style="text-align: left;"><span style="font-weight: bold;">ITEM 12.</span> <br/>
                            </div>
                          </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                            <div style="text-align: left;"><span style="font-weight: bold;">SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS</span></div>
                          </td>

  </tr>


</table>
                  </div>

                  <div style="text-indent: -72pt; margin-left: 72pt; font-weight: bold;"><br/>
                  </div>

                  <div style="text-indent: 18pt;">The information required by Item 201(d) of Regulation S-K is set forth in our 2024 Definitive Proxy Statement under the caption &#8220;EQUITY COMPENSATION PLAN INFORMATION&#8221; and is incorporated in this report by
                    reference. The information required by Item 403 of Regulation S-K is set forth in our 2024 Definitive Proxy Statement under the caption &#8220;OWNERSHIP OF COMMON STOCK BY DIRECTORS, OFFICERS AND CERTAIN BENEFICIAL OWNERS&#8221;, and is
                    incorporated in this report by reference.</div>

                  <div><br/>
                  </div>

                  <a id="CERTAINRELATIONSHIPSANDRE"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 13.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE</div>
                        </td>

  </tr>


</table>
                  <div style="text-indent: 49.5pt; font-weight: bold;"><br/>
                  </div>

                  <div style="text-indent: 18pt;">The information required by Items 404 and Item 407(a) of Regulation S-K is set forth in our 2024 Definitive Proxy Statement under the captions &#8220;MEETINGS AND COMMITTEES OF THE BOARD&#8221; and &#8220;RELATED PARTY
                    TRANSACTIONS&#8221;, respectively, and is incorporated in this report by reference.</div>

                  <div><br/>
                  </div>

                  <a id="PRINCIPALACCOUNTANTFEESAN"><!--Anchor--></a>
                  <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 14.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">PRINCIPAL ACCOUNTANT FEES AND SERVICES</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">The information required by Item 9(e) of Rule 14a-101 of the Exchange Act is set forth in our 2024 Definitive Proxy Statement under the captions &#8220;Independent Registered Public Accounting Firm Fees&#8221; and
                    &#8220;AUDIT COMMITTEE REPORT&#8221;, and is incorporated in this report by reference.</div>

                  <div><br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">75</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <div style="text-align: center; font-weight: bold;">PART IV</div>

                  <div><br/>
                  </div>

                  <a id="EXHIBITSANDFINANCIALSTATE"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 15.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">EXHIBITS AND FINANCIAL STATEMENT SCHEDULES</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">The following documents are filed as part of this report:</div>

                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 4.45%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 79.34%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 7.5%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Page</div>
                          <div style="text-align: center; font-weight: bold;">No.</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 79.34%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 7.5%; vertical-align: top;">
                          <div><br/>
                          </div>
                        </td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>1.</div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 79.34%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div><!--Anchor--><a href="#CONSOLIDATEDFINANCIALSTAT">Financial Statements: See &#8220;INDEX TO CONSOLIDATED FINANCIAL STATEMENTS&#8221; in Part II, Item 8 of this Form 10-K for a list of financial statements filed as part of this report.</a></div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 7.5%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">37</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 79.34%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 7.5%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>2.</div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 79.34%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Financial Statement Schedules</div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 7.5%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 79.34%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 7.5%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 79.34%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>All schedules are omitted because they are immaterial or not applicable.</div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 7.5%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 79.34%; vertical-align: top;">&#160;</td>

    <td style="width: 4.36%; vertical-align: top;">&#160;</td>

    <td style="width: 7.5%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 4.45%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>3.</div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 79.34%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <!--Anchor-->
                          <div><a href="#EXHIBITINDEX">Exhibit Index</a></div>
                        </td>

    <td style="width: 4.36%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 7.5%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">77</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">76</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <div style="text-align: center; font-weight: bold;">EXHIBIT INDEX<a id="EXHIBITINDEX"><!--Anchor--></a></div>

                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10.1%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 1.95%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 38%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" colspan="5" rowspan="1">
                          <div style="text-align: center; font-weight: bold;">Incorporated by Reference</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 11%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Filed or</div>
                          <div style="text-align: center; font-weight: bold;">Furnished</div>
                          <div style="text-align: center; font-weight: bold;">Herewith</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Exhibit</div>
                          <div style="text-align: center; font-weight: bold;">Number</div>
                        </td>

    <td style="width: 1.95%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 38%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Description</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 10%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Form</div>
                        </td>

    <td style="width: 1%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 10%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Exhibit</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 15%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: center; font-weight: bold;">Filing</div>
                          <div style="text-align: center; font-weight: bold;">Date</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td style="width: 11%; vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex3_1.htm"><span style="text-decoration: underline;">3.1</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certificate of Incorporation as amended July 9, 1986, April 9, 1990, March 16, 1995, November 13, 1997, April 15, 2002 and June 20, 2005</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">3.1</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/23/2019</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116079692/ex3_2.htm"><span style="text-decoration: underline;">3.2</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amended and Restated By-laws of the Company dated as of September 7, 2016</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">8-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">3.2</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">9/13/2016</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex4_1.htm"><span style="text-decoration: underline;">4.1</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Description of Securities of the Company</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">4.1</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/23/2019</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119017162/ex3_1.htm"><span style="text-decoration: underline;">4.2</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certificate of Amendment with Respect to Series A Preferred Stock, dated September 24, 2019</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">8-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">3.1</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">9/24/2019</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046903/ex10_1.htm"><span style="text-decoration: underline;">10.1</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>The Company&#8217;s 1992 Employee Stock Purchase Plan</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.1</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/20/2017</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117000934/ex10_2.htm"><span style="text-decoration: underline;">10.2</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the Employee Stock Purchase Plan as of March 24, 2004<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.2</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">1/6/2017</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116047150/ex10_4.htm"><span style="text-decoration: underline;">10.3</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the Employee Stock Purchase Plan as of April 8, 2010<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.4</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">1/7/2016</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036118045611/s002591x1_ex10-4.htm"><span style="text-decoration: underline;">10.4</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the Employee Stock Purchase Plan as of March 28, 2012<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.4</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/21/2018</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex10_5.htm"><span style="text-decoration: underline;">10.5</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the Employee Stock Plan as of December 18, 2019<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.5</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/23/2019</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116055498/formdef14a.htm"><span style="text-decoration: underline;">10.6</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>2016 Equity Incentive Compensation Plan<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">DEF 14A</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">2/29/2016</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036123012836/brhc10049907_ex10-1.htm"><span style="text-decoration: underline;">10.7</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the 2016 Equity Incentive Compensation Plan</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">8-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.1</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">3/21/2023</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex10_7.htm"><span style="text-decoration: underline;">10.8</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>The Company&#8217;s 2007 Long-Term Equity Incentive Plan<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">10.9</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">2/23/2007</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 10%;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 1%;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 10%;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; text-align: center;" colspan="1">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116047150/ex10_7.htm"><span style="text-decoration: underline;">10.9</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the 2007 Long-Term Equity Incentive Plan as of April 8, 2010<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10.7<br/>
                          </div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 15%;">&#160;1/7/2016</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;" colspan="1">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 10%;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 1.09%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036115000753/ex10_8.htm"><span style="text-decoration: underline;">10.10</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amendment to the 2007 Long Term Equity Incentive Plan as of April 11, 2014<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10.8<br/>
                          </div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 15%;">&#160;1/6/2015</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;" colspan="1">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 10%;">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 1.09%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036115000753/ex10_9.htm"><span style="text-decoration: underline;">10.11</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>2011 Executive Incentive Compensation Plan effective as of November 1, 2010<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10.9 <br/>
                          </div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); text-align: center; width: 15%;">&#160;1/6/2015</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;" colspan="1">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

    <td style="vertical-align: top; text-align: center; width: 1.09%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036123059254/ef20012464_ex10-12.htm"><span style="text-decoration: underline;">10.12</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Form of Restricted Stock Award Agreement</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.12</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/26/2023</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036115027000/ex10_20.htm"><span style="text-decoration: underline;">10.13</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Joint Venture Operating Agreement dated November 20, 2013, between the Company and Dai Nippon Printing Co., Ltd.</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.20</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/26/2023</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036115027000/ex10_21.htm"><span style="text-decoration: underline;">10.14</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Outsourcing Agreement dated November 20, 2013, among the Company, Dai Nippon Printing Co., Ltd and Photronics Semiconductor Mask Corporation</div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.21</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/26/2023</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 1%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036115027000/ex10_22.htm"><span style="text-decoration: underline;">10.15</span></a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>License Agreement dated November 20, 2013, between the Company and Photronics Semiconductor Mask Corporation<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">#</sup></div>
                        </td>

    <td colspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.22</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">12/26/2023</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">77</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex10_18.htm">10.16</a></td>

    <td colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Executive Employment Agreement between the Company and Christopher J. Progler, Vice President, Chief Technology Officer dated September 10, 2007<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10.18</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/23/2019</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 38%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 15%; text-align: center;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116047150/ex10_30.htm">10.17</a></td>

    <td colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Executive Employment Agreement between the Company and Richelle E. Burr dated May 21, 2010<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.30</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"> <br/>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">1/7/2016</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 38%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="2">&#160;</td>

    <td style="vertical-align: top;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046903/ex10_31.htm">10.18</a></td>

    <td colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Executive Employment Agreement between the Company and John P. Jordan dated September 5, 2017<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.31</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"> <br/>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/20/2017</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; text-align: center;">&#160;</td>

    <td colspan="1" style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 38%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="2">&#160;</td>

    <td style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036120005521/ex10_36.htm">10.19</a></td>

    <td colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Employment Agreement dated March 9, 2020, between Photronics Dai Nippon Mask Corporation, Photronics and Frank Lee</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-Q</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.36</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"> <br/>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">3/11/2020</div>
                        </td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex10_23.htm">10.20</a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Form of Amendment to Executive Employment Agreement dated March 16, 2012+</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.23</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/23/2019</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036118045611/s002591x1_ex10-24.htm">10.21<br/>
                          </a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Fourth Amended and Restated Credit Agreement dated as of September 27, 2018, among Photronics, Inc. the Foreign Subsidiary Borrower Party Thereto, the Lender Party Thereto, JPMorgan Chase Bank, N.A. as Administrative and
                            Collateral Agent and Bank of America, N.A. as syndication agent</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.24</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/21/2018</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036118045611/s002591x1_ex10-25.htm">10.22<br/>
                          </a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Third Amended and Restated Security Agreement entered into as of September 27, 2018, by and among Photronics, Inc., the subsidiaries of the Company and JPMorgan Chase Bank N.A</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.25</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/21/2018</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036118045611/s002591x1_ex10-26.htm">10.23<br/>
                          </a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Fixed Asset Loan Agreement between Photronics DNP Mask Corporation Xiamen and Industrial and Commercial Bank China Limited Xiamen Xiang&#8217;an Branch</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.26</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/21/2018</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036118045611/s002591x1_ex10-27.htm">10.24<br/>
                          </a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Working Capital Loan Agreement between Industrial and Commercial Bureau China Limited Xiamen Xiang&#8217;an Branch and Photronics DNP Mask Corporation Xiamen effective as of November 7, 2018</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.27</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">12/21/2018</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036116078718/ex10_35.htm">10.26<br/>
                          </a></td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Investment Agreement between Xiamen Torch Hi-Tech Industrial Development Zone Management Committee and Photronics Singapore Pte. Ltd.</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-Q</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.35</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">9/2/2016</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119023041/ex10_29.htm">10.27</a></div>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Amendment No. 1 to the Investment Agreement between Xiamen Torch Hi-Tech Industrial Development Zone Management Committee and Photronics Singapore Pte, Ltd. #</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.29</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center; text-indent: -9pt; margin-left: 9pt;">12/23/2019</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036122008662/brhc10034862_ex10-41.htm">10.28</a></div>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div><span style="background-color: rgb(204, 238, 255);">Amendment No. 2 to the Investment Agreement between Xiamen Torch Hi-Tech Industrial Development Zone, People&#8217;s Government of Xiang&#8217;an Xiamen, Photronics Singapore Pte. Ltd.,
                              DNP Asia Pacific Pte and Xiamen American Japan Photronics Mask Co., Ltd. #</span></div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center; margin-left: 5.2pt;">10-Q</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.41</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;">3/10/2022</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 38%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 10%;"><br/>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 15%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; width: 11%;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036122008662/brhc10034862_ex10-42.htm">10.29</a></div>
                        </td>

    <td rowspan="1" colspan="1" style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 38%;">
                          <div>Amendment No. 3 to the Investment Agreement between Xiamen Torch Hi-Tech Industrial Development Zone, People&#8217;s Government of Xiang&#8217;an Xiamen, Photronics Singapore Pte. Ltd., DNP Asia Pacific Pte and Xiamen American Japan
                            Photronics Mask Co., Ltd. #</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10-Q</div>
                        </td>

    <td rowspan="1" style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td rowspan="1" style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.42</div>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%; text-align: center;">3/10/2022<br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 11%;"><br/>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">78</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046677/ex10_27.htm">10.30</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Joint Venture Operating Agreement dated May 16, 2017, among Photronics, Photronics Singapore, DNP, and DNP Asia Pacific</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-Q/A</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.27</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">12/19/2017</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046677/ex10_28.htm">10.31</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Outsourcing Agreement dated May 16, 2017, among Photronics, DNP, Photronics DNP Photomask Corporation (&#8220;PDMC&#8221;) and PDMCX</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-Q</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.28</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">6/8/2017</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046677/ex10_29.htm">10.32</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Amended and Restated License Agreement dated May 16, 2017 between DNP and PDMC#</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-Q/A</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.29</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">12/19/2017</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036117046903/ex10_42.htm">10.33</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Investment Cooperation Agreement between Hefei State Hi-tech Industry Development Zone and Photronics UK, Ltd.</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.42</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">12/20/2017</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036121001225/brhc10018426_ex10-38.htm">10.34</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Master Lease Agreement dated October 12, 2020, between TD Equipment Finance and the Company</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.38</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">1/15/2021</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036119016110/ex10_28.htm">10.35</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Master Lease Agreement Dated September 5, 2019 between Bank of America and the Company</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-Q</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.28</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">9/5/2019</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036121001225/brhc10018426_ex10-39.htm">10.36</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Fixed Asset Loan Contract dated October 1, 2020, between Hefei Photronics Mask Corporation and China Construction Bank Corporation</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.39</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">1/15/2021</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036121001225/brhc10018426_ex10-40.htm">10.37</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Maximum Mortgage Contract dated October 1, 2020 between Photronics Mask Corporation Hefei and China Construction Bank Corporation Hefei Shushan&#160; Branch</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.40</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">1/15/2021</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036124003315/ef20019466_ex10-1.htm">10.38</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Separation Agreement and General Release between Photronics, Inc. and John Jordan dated February 23, 2024</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">8-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.1</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">1/23/2024</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036124042827/ef20036709_ex10-1.htm">10.39</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Separation Agreement, General Release, and Consulting Agreement, dated September 30, 2024 between Photronics Inc, and Richelle Burr</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">8-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10.1</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">10/4/2024</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036123059254/ef20012464_ex19.htm">19</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Insider Trading Policy</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">19</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">12/26/2023</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex21.htm">21</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>List of Subsidiaries of the Company</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">21</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex23-1.htm">23.1</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Consent of Deloitte &amp; Touche LLP, Independent Registered Public Accounting Firm</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">23.1</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td style="width: 11%; vertical-align: middle; background-color: rgb(204, 238, 255); text-align: center;">
                          <div>X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex31-1.htm">31.1</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certification of Chief Executive Officer pursuant to Rule 13a-14(a)/15d-14(a) of the Exchange Act, as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">31.1</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex31-2.htm">31.2</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certification of Chief Financial Officer pursuant to Rule 13a-14(a)/15d-14(a) of the Exchange Act, as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">32.2</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex32-1.htm">32.1</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certification of Chief Executive Officer pursuant to 18 U.S.C. Section 1350 as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">32.1</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"><br/>
                        </td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 1.95%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="width: 11%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="ef20035608_ex32-2.htm">32.2</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Certification of Chief Financial Officer pursuant to 18 U.S.C. Section 1350 as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">32.2</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);"> <br/>
                        </td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>


</table>
                  <div> <br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">79</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10.1%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;"><a href="https://www.sec.gov/Archives/edgar/data/810136/000114036123059254/ef20012464_ex97.htm">97</a></div>
                        </td>

    <td style="width: 1.95%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Compensation Recovery Policy effective October 2, 2023</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td style="width: 1%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">97</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center; text-indent: 12.1pt;">12/26/2023</div>
                        </td>

    <td style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 11%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

  </tr>


</table>
                  <div><br/></div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.INS</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: middle; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Instance Document (the instance document does</div>
                          <div>not appear in the Interactive Data File because its XBRL tags</div>
                          <div>are embedded within the Inline XBRL document)</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: middle; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">101.INS</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.34%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: middle;">&#160;</td>

    <td colspan="1" style="width: 1.22%; vertical-align: middle;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.34%;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.SCH</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Taxonomy Extension Schema Document</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">101.SCH</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.34%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.22%; vertical-align: top;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.34%;">&#160;</td>

    <td style="width: 15%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.CAL</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Taxonomy Extension Calculation Linkbase Document</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">101.CAL</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.34%;">&#160;</td>

    <td style="width: 15%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="width: 1.09%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 38%;">&#160;</td>

    <td style="vertical-align: top; width: 1.22%;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 15%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top; text-align: center;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.DEF</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Taxonomy Extension Definition Linkbase Document</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">101.DEF</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;"><br/>
                          </div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.22%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 15%; text-align: center;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.LAB</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Taxonomy Extension Label Linkbase Document</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">101.LAB</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;"><br/>
                          </div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.22%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 15%; text-align: center;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>101.PRE</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Inline XBRL Taxonomy Extension Presentation Linkbase Document</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">
                          <div style="text-align: center;">10-K</div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255); text-align: center;">101.PRE</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">
                          <div style="text-align: center;"><br/>
                          </div>
                        </td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 38%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.22%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top;">&#160;</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top; width: 15%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; text-align: center;" colspan="2">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>104</div>
                        </td>

    <td style="width: 2%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 38%; vertical-align: top; background-color: rgb(204, 238, 255);">
                          <div>Cover Page Interactive Data File (formatted as inline XBRL and contained in, Exhibit 101)</div>
                        </td>

    <td colspan="1" style="width: 1.22%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 10%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="width: 10%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="width: 1.34%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255); width: 15%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; background-color: rgb(204, 238, 255); width: 1.09%;">&#160;</td>

    <td style="vertical-align: top; background-color: rgb(204, 238, 255);" colspan="2">
                          <div style="text-align: center;">X</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 10.1%; vertical-align: top;">
                          <div><sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">+</sup></div>
                        </td>

    <td style="width: 89.78%; vertical-align: top;">
                          <div>Represents a management contract or compensatory plan or arrangement.</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">&#160;</td>

    <td style="width: 89.78%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 10.1%; vertical-align: top;">
                          <div>#</div>
                        </td>

    <td style="width: 89.78%; vertical-align: top;">
                          <div>Portions of this exhibit have been omitted pursuant to a request for confidential treatment filed with the Securities and Exchange Commission.</div>
                        </td>

  </tr>


</table>
                  <div>
<div><br/></div>

                    <div style="text-indent: 18pt;">The Company will provide a copy of any exhibit upon receipt of a written request for the particular exhibit or exhibits desired. All requests should be addressed to the Company&#8217;s Vice President, General
                      Counsel and Corporate Secretary at the address of the Company&#8217;s principal executive offices.</div>

                    <div style="text-indent: 18pt;"> <br/>
                    </div>

                  </div>

                  <a id="FORM10-KSUMMARY"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">ITEM 16.</td>

    <td style="width: auto; vertical-align: top;">
                          <div style="font-weight: bold; text-align: left;">FORM 10-K SUMMARY</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div>&#160;&#160;&#160;&#160;&#160;&#160;&#160;Not applicable.</div>

                  <div> <br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">80</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <div style="font-weight: bold;">SIGNATURES</div>

                  <div><br/>
                  </div>

                  <div style="text-indent: 18pt;">Pursuant to the requirements of Section 13 or 15(d) of the Exchange Act, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.</div>

                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">
                          <div style="text-align: justify;">PHOTRONICS, INC.</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">
                          <div style="text-align: justify; text-indent: 18pt;">(Registrant)</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div>/s/ Eric Rivera</div>
                        </td>

    <td rowspan="1" style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;<br/>
                        </td>

    <td rowspan="1" style="width: 52%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 40%; vertical-align: top;">
                          <div>Eric Rivera</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>
                            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Executive Vice President, Chief Financial Officer</div>
                          </div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top; white-space: nowrap;">
                          <div>
                            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Principal Financial Officer / Principal Accounting Officer)</div>
                          </div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 40%; vertical-align: top;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>


</table>
                  <div>
                    <div style="text-indent: 12.6pt;"> <br/>
                    </div>

                    <div style="text-indent: 9pt;">Pursuant to the requirements of the Exchange Act, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.</div>

                    <div style="text-indent: 12.6pt;"> <br/>
                    </div>

                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div>/s/ Frank Lee</div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 52%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 40%; vertical-align: top;">
                          <div>Frank Lee</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>Chief Executive Officer</div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>Director</div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>(Principal Executive Officer)</div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div>/s/ Eric Rivera</div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 52%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 40%; vertical-align: top;">
                          <div>Eric Rivera</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>
                            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Executive Vice President, Chief Financial Officer</div>
                          </div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>
                            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Principal Financial Officer / Principal Accounting Officer)</div>
                          </div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: justify;">
                            <div>/s/ Constantine S. Macricostas</div>
                          </div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 52%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 40%; vertical-align: top;">
                          <div>Constantine S. Macricostas</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>
                            <div>Chairman of the Board</div>
                          </div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>


</table>
                  <div>&#160;</div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="vertical-align: top;" colspan="3"><br/>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">By</td>

    <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: justify;">
                            <div>/s/ Walter M. Fiederowicz</div>
                          </div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;"><br/>
                        </td>

    <td style="width: 52%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

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

    <td style="width: 40%; vertical-align: top;">
                          <div>Walter M. Fiederowicz</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;"><br/>
                        </td>

    <td rowspan="1" style="width: 40%; vertical-align: top;">
                          <div>Director</div>
                        </td>

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

    <td rowspan="1" style="width: 52%; vertical-align: top;"><br/>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
                    <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">81</span></div>

                    <div class="BRPFPageBreak" style="page-break-after: always;">
                      <hr style="margin: 4px 0px; width: 100%; border-width: 0px; height: 2px; color: rgb(0, 0, 0); background-color: rgb(0, 0, 0); clear: both;"/></div>

                    <div style="width: 100%;" class="BRPFPageHeader">
                      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;"><a href="#TABLEOFCONTENTS">Table of Contents</a></div>

                    </div>

                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 35%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: justify;">
                            <div>/s/ Adam Lewis</div>
                          </div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">
                          <div>Adam Lewis</div>
                        </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 3%; vertical-align: top;">&#160;</td>

    <td rowspan="1" style="vertical-align: top;" colspan="3">
                          <div>Director</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: bottom; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 35%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div style="text-align: justify;">
                            <div>/s/ Daniel Liao</div>
                          </div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">
                          <div>Daniel Liao</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">Director</td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: bottom; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 35%; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div>
                            <div>/s/ George Macricostas</div>
                          </div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top; padding-bottom: 2px;">
                          <div>December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 35%; vertical-align: top;">
                          <div>George Macricostas</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">Director</td>

  </tr>


</table>
                  <div><br/>
                  </div>

                  <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">
                          <div>By</div>
                        </td>

    <td style="width: 35%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                          <div>/s/ Mary Paladino</div>
                        </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top; padding-bottom: 2px;">
                          <div style="text-align: justify;">December 18, 2024</div>
                        </td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="width: 35%; vertical-align: top;">
                          <div>Mary Paladino</div>
                        </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 3%; vertical-align: top;">&#160;</td>

    <td style="vertical-align: top;" colspan="3">
                          <div>Director</div>
                        </td>

  </tr>


</table>
                  <div><br/>
                  </div>

                </div>

                <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 3%; vertical-align: top; padding-bottom: 2px;">By</td>

    <td style="width: 35%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                        <div>/s/ Mitchell G. Tyson</div>
                      </td>

    <td style="width: 5%; vertical-align: top; padding-bottom: 2px;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top; padding-bottom: 2px;">
                        <div style="text-align: justify;">December 18, 2024</div>
                      </td>

  </tr>

  <tr>

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

    <td style="width: 35%; vertical-align: top;">
                        <div>Mitchell G. Tyson</div>
                      </td>

    <td style="width: 5%; vertical-align: top;">&#160;</td>

    <td style="width: 56.75%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

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

    <td colspan="3" style="vertical-align: top;">Director</td>

  </tr>


</table>
                <div> <br/>
                </div>

                <div><br/></div>

              </div>

            </div>

          </div>

        </div>

      </div>

    </div>

  </div>


</div>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21
<SEQUENCE>2
<FILENAME>ef20035608_ex21.htm
<DESCRIPTION>EXHIBIT 21
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  <div style="text-align: right;"><font style="font-weight: bold;">Exhibit 21</font><br>
  </div>
  <div><br>
  </div>
  <div>
    <div style="text-align: center;"><font style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">SUBSIDIARIES OF PHOTRONICS, INC.</font><br>
    </div>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" border="0" id="z7ecccb9670354444ab9110ac8e34da97" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">

        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">&#160;</td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">State or Jurisdiction of</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Incorporation or</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Organization</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Align-Rite International, Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(United Kingdom)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Photronics (Wales) Limited</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(United Kingdom)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics Idaho, Inc.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Idaho, USA)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics Texas Allen, Inc.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Texas, USA)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics MZD, GmbH</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Germany)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics Advanced Mask Corporation</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Taiwan, R.O.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Photronics DNP Mask Corporation <sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Taiwan, R.O.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 18pt;">PDMC Shanghai, Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Shanghai, P.R.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics Singapore Pte, Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Singapore)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Xiamen American Japan Photronics Mask Co., Ltd.<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;"> (1)</sup></div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Xiamen, P.R.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics UK, Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(United Kingdom)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Photronics Mask Corporation Hefei <sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">(2)</sup></div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Hefei, P.R.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Photronics Korea, Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Republic of Korea)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Photronics Mask Corporation Hefei <sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">(2)</sup></div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Hefei, P.R.C.)</div>
          </td>
        </tr>
        <tr>
          <td nowrap="nowrap" style="width: 82%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-left: 9pt;">Taichung Photronics Photomask Co., Ltd.</div>
          </td>
          <td nowrap="nowrap" style="width: 18%; vertical-align: bottom; background-color: rgb(204, 238, 255);">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Taiwan, R.O.C.)</div>
          </td>
        </tr>

    </table>
    <div><br>
    </div>
    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Note: Entities directly owned by subsidiaries of Photronics, Inc. are indented and listed below their immediate parent. Ownership is 100% unless otherwise indicated.</div>
    <div><br>
    </div>
    <div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z8ee95c4955154356bfb6ee7205c3580f" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">50.01% owned by Photronics, Inc. and 49.99% owned by Dai Nippon Printing Co., Ltd.</div>
              </td>
            </tr>

        </table>
      </div>
    </div>
    <div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="zaa61848d84a1409aa69a88b0e403ba9c" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">(2)</sup></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">64.00% owned by Photronics UK, Ltd. and 36.00% owned by Photronics Cheonan Co., Ltd.</div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <br>
    </div>
  </div>
  <div>
    <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>ef20035608_ex23-1.htm
<DESCRIPTION>EXHIBIT 23.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  <div style="text-align: right;"><font style="font-weight: bold;">Exhibit 23.1</font><br>
  </div>
  <div><br>
  </div>
  <div>
    <div>
      <div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;</div>
        <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><font style="font-size: 10pt; font-family: 'Times New Roman'; color: #000000;">We consent to the incorporation by reference in Registration Statement Nos. 333-252486,
            333-217676, and 333-276268 on Form S-8 of our report dated </font>December 18, 2024<font style="font-size: 10pt; font-family: 'Times New Roman'; color: #000000;">, relating to the consolidated financial statements of Photronics, Inc., and the
            effectiveness of Photronics, Inc.&#8217;s internal control over financial reporting appearing in this Annual Report on Form 10-K for the year ended October 31, 2024.</font></div>
        <div><br>
        </div>
      </div>
      <div>&#160;</div>
      <div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">/s/ Deloitte &amp; Touche LLP</div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">Boston, Massachusetts</div>
        <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">December 18, 2024</div>
      </div>
    </div>
    <div><br>
    </div>

    <div><br>
    </div>
    <br>
    <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>4
<FILENAME>ef20035608_ex31-1.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <div>
      <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
    <div style="text-align: left;"><font style="font-weight: bold;">EXHIBIT 31.1</font><br>
    </div>
    <div><br>
    </div>
    <div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">I, Frank Lee, certify that:</div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="zc6cfaad55d97491283aa1d00809acd14" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">1.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">I have reviewed this Annual Report on Form 10-K of Photronics, Inc.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z933a6ded6710413cb1e315af68bc0bfd" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">2.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z490241d0a89349dab09832c1d24d7961" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">3.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="zf9643ee4163243fabde867ec8e01ccab" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">4.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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:</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z314f86e75dd34209b0c90da093410eae" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">
                <div><br>
                </div>
              </td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">a)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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;</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z718773936f014c6ab7a22ed2058d2aed" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">b)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
                    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z40847f68fb274952b3e135e2d3396dfa" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">c)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="zdf5c25dfe9fe4cb59e8bcbaca937f3f2" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">d)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z55d8dd5bdf9a414db06cb948aaace123" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">5.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting,
                    to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z81e49cbdc25e4a908796a32cf5e774ff" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">a)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z84156583cbda450db6264a1ceee329e1" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">b)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control
                    over financial reporting.</font></div>
              </td>
            </tr>

        </table>
      </div>
    </div>
    <div><br>
    </div>
    <div>
      <table cellspacing="0" cellpadding="0" border="0" id="z9aa3334fabb048c0acb50232996f7e1f" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">

          <tr>
            <td style="width: 40%; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);">
              <div>/s/ FRANK LEE</div>
            </td>
            <td style="width: 60%; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;">&#160;</td>
          </tr>
          <tr>
            <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;" colspan="2">
              <div>Frank Lee<br>
              </div>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;" rowspan="1" colspan="2">Chief Executive Officer</td>
          </tr>
          <tr>
            <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;" rowspan="1" colspan="2">Director<br>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;" rowspan="1" colspan="2">(Principal Executive Officer)<br>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;" rowspan="1" colspan="2">December 18, 2024</td>
          </tr>

      </table>
    </div>
    <div><br>
    </div>
    <div><br>
    </div>
    <div>
      <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>5
<FILENAME>ef20035608_ex31-2.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <div>
      <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
    <div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">EXHIBIT 31.2</div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">I, Eric Rivera, certify that:</div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="zf40e82e96fa34972ad1e7842fd6a09fe" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">1.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">I have reviewed this Annual Report on Form 10-K of Photronics, Inc.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z720cf8bdc4094ecc9b0bcc63b3e53304" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">2.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="zd443cf23cc4948c09d77e161c4cd3d09" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">3.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z758c90e328ae43069eb73c51f7e9a54d" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">4.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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:</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z09f008e6d11343d5a5dc577fdcaa4f30" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">a)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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;</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="zb44a7f63c83747669ae6b5e14ce4e501" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">b)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
                    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z679d2200940f44c99fc8aa769d3bf344" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">c)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z5570e6158b66407ab97b3950b367e347" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">d)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="zeb5b2c7fc4b34179b3dc95bbbc5760ac" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">5.</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting,
                    to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z68c278c1a7f643679ce77e201fc34162" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">a)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">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</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z7cbfad05ced447d89534d1be88edf85e" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="width: 36pt;">&#160;</td>
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">b)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control
                    over financial reporting.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div style="text-align: left; text-indent: 27pt;"><br>
        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="zcfc12d0237a24f7fbaca0e8d67e2f63f">

            <tr>
              <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">/s/&#160;ERIC RIVERA</div>
              </td>
              <td style="width: 60%; vertical-align: top; padding-bottom: 2px;">&#160;</td>
            </tr>
            <tr>
              <td colspan="2" style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Eric Rivera<br>
                </div>
              </td>
            </tr>
            <tr>
              <td colspan="2" rowspan="1" style="vertical-align: top;">Executive Vice President, Chief Financial Officer</td>
            </tr>
            <tr>
              <td colspan="2" rowspan="1" style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(</font>Principal Financial Officer / Principal Accounting<font style="font-size: 10pt; font-family: 'Times New Roman';">&#160;</font>Officer)</div>
              </td>
            </tr>
            <tr>
              <td colspan="2" rowspan="1" style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">December 18, 2024</div>
              </td>
            </tr>

        </table>
      </div>
    </div>
    <div><br>
    </div>
    <div><br>
    </div>
    <div>
      <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>6
<FILENAME>ef20035608_ex32-1.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <div>
      <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
    <div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">EXHIBIT 32.1</div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Section 1350 Certification of the Chief Executive Officer</div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">I, Frank Lee, Chief Executive Officer of Photronics, Inc. (the &#8220;Company&#8221;), certify, to my knowledge, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C.
        Section 1350, that:</div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z1b62b66d253d4c858206e3f82f2fe13f" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(1)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The Annual Report on Form 10-K of the Company for the fiscal year ended October 31, 2024 (the &#8220;Report&#8221;) fully complies with the requirements of
                    Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;" id="z1d4b5a0b432e495c93a8c13b68bc521d" class="DSPFListTable">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(2)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the
                    Company.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The foregoing certification is being furnished pursuant to 18 U.S.C. &#167; 1350 and will not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Exchange Act, or otherwise
        subject to the liability of that section. Such certification will not be deemed to be incorporated by reference into any filing under the Securities Act or the Exchange Act, except to the extent that the registrant specifically incorporates it by
        reference.</div>
    </div>
    <div><br>
    </div>
    <div>
      <table cellspacing="0" cellpadding="0" border="0" id="z7979539b382c43748818e1eaf9bff655" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">

          <tr>
            <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">/s/ FRANK LEE</div>
            </td>
            <td style="width: 60%; vertical-align: top; padding-bottom: 2px;">&#160;</td>
          </tr>
          <tr>
            <td style="vertical-align: top;" colspan="2">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Frank Lee<br>
              </div>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top;" rowspan="1" colspan="2">Chief Executive Officer</td>
          </tr>
          <tr>
            <td style="vertical-align: top;" rowspan="1" colspan="2">Director<br>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top;" rowspan="1" colspan="2">(Principal Executive Officer)<br>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top;" rowspan="1" colspan="2">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">December 18, 2024</div>
            </td>
          </tr>

      </table>
    </div>
    <div><br>
    </div>
    <div><br>
    </div>
    <div>
      <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>7
<FILENAME>ef20035608_ex32-2.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, LLC
         Document created using Broadridge PROfile 24.12.1.5274
         Copyright 1995 - 2024 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <div>
      <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
    <div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">EXHIBIT 32.2</div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Section 1350 Certification of the Chief Financial Officer</div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">I, Eric Rivera, Chief Financial Officer of Photronics, Inc. (the &#8220;Company&#8221;), certify, to my knowledge, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18
        U.S.C. Section 1350, that:</div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="z7c43e7e4cc6841e6b34abd82a5dd4b4f" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(1)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The Annual Report on Form 10-K of the Company for the fiscal year ended October 31, 2024 (the &#8220;Report&#8221;) fully complies with the requirements of
                    Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div>
        <table cellspacing="0" cellpadding="0" class="DSPFListTable" id="zf398cf7b39604730b155d27ba0c55354" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">

            <tr style="vertical-align: top;">
              <td style="text-align: right; vertical-align: top; width: 36pt;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(2)</font></div>
              </td>
              <td style="text-align: left; vertical-align: top; width: auto;">
                <div style="text-align: left;"><font style="font-size: 10pt; font-family: 'Times New Roman';">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the
                    Company.</font></div>
              </td>
            </tr>

        </table>
      </div>
      <div><br>
      </div>
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The foregoing certification is being furnished pursuant to 18 U.S.C. &#167; 1350 and will not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Exchange Act, or otherwise
        subject to the liability of that section. Such certification will not be deemed to be incorporated by reference into any filing under the Securities Act or the Exchange Act, except to the extent that the registrant specifically incorporates it by
        reference.</div>
    </div>
    <div><br>
    </div>
    <div>
      <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="z3e47fb29f85848289e3f0628279e726c">

          <tr>
            <td style="width: 40%; vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">/s/ ERIC RIVERA</div>
            </td>
            <td style="width: 60%; vertical-align: top; padding-bottom: 2px;">&#160;</td>
          </tr>
          <tr>
            <td colspan="2" style="vertical-align: top;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Eric Rivera<br>
              </div>
            </td>
          </tr>
          <tr>
            <td colspan="2" rowspan="1" style="vertical-align: top;">Executive Vice President, Chief Financial Officer</td>
          </tr>
          <tr>
            <td colspan="2" rowspan="1" style="vertical-align: top;"><font style="font-size: 10pt; font-family: 'Times New Roman';">(</font>Principal Financial Officer / Principal Accounting<font style="font-size: 10pt; font-family: 'Times New Roman';">&#160;</font>Officer)</td>
          </tr>
          <tr>
            <td colspan="2" rowspan="1" style="vertical-align: top;">December 18, 2024</td>
          </tr>

      </table>
    </div>
    <div><br>
    </div>
    <div><br>
    </div>
    <div>
      <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>plab-20241031.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 24.12.1.5274 Broadridge-->
<xs:schema targetNamespace="http://photronics.com/20241031" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:plab="http://photronics.com/20241031" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:srt-types="http://fasb.org/srt-types/2024">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="plab-20241031_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="plab-20241031_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="plab-20241031_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="plab-20241031_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:roleType roleURI="http://photronics.com/role/DocumentAndEntityInformation" id="DocumentAndEntityInformation">
        <link:definition>000100 - Document - Document and Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedBalanceSheets" id="ConsolidatedBalanceSheets">
        <link:definition>010000 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical" id="ConsolidatedBalanceSheetsParenthetical">
        <!--Parent Role: Consolidated Balance Sheets-->
        <link:definition>010100 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedStatementsOfIncome" id="ConsolidatedStatementsOfIncome">
        <link:definition>020000 - Statement - Consolidated Statements of Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" id="ConsolidatedStatementsOfComprehensiveIncomeLoss">
        <link:definition>030000 - Statement - Consolidated Statements of Comprehensive Income (Loss)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" id="ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical">
        <!--Parent Role: Consolidated Statements of Comprehensive Income (Loss)-->
        <link:definition>030100 - Statement - Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedStatementsOfEquity" id="ConsolidatedStatementsOfEquity">
        <link:definition>040000 - Statement - Consolidated Statements of Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ConsolidatedStatementsOfCashFlows" id="ConsolidatedStatementsOfCashFlows">
        <link:definition>050000 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPolicies" id="SummaryOfSignificantAccountingPolicies">
        <link:definition>060100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccountsReceivable" id="AccountsReceivable">
        <link:definition>060200 - Disclosure - ACCOUNTS RECEIVABLE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherCurrentAssets" id="OtherCurrentAssets">
        <link:definition>060300 - Disclosure - OTHER CURRENT ASSETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/Inventories" id="Inventories">
        <link:definition>060400 - Disclosure - INVENTORIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNet" id="PropertyPlantAndEquipmentNet">
        <link:definition>060500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PdmcxJointVenture" id="PdmcxJointVenture">
        <link:definition>060600 - Disclosure - PDMCX JOINT VENTURE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccruedLiabilities" id="AccruedLiabilities">
        <link:definition>060700 - Disclosure - ACCRUED LIABILITIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/Debt" id="Debt">
        <link:definition>060800 - Disclosure - DEBT</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherLiabilities" id="OtherLiabilities">
        <link:definition>060900 - Disclosure - OTHER LIABILITIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/Revenue" id="Revenue">
        <link:definition>061000 - Disclosure - REVENUE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/Leases" id="Leases">
        <link:definition>061100 - Disclosure - LEASES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SharebasedCompensation" id="SharebasedCompensation">
        <link:definition>061200 - Disclosure - SHARE-BASED COMPENSATION</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/EmployeeRetirementPlans" id="EmployeeRetirementPlans">
        <link:definition>061300 - Disclosure - EMPLOYEE RETIREMENT PLANS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxes" id="IncomeTaxes">
        <link:definition>061400 - Disclosure - INCOME TAXES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/EarningsPerShare" id="EarningsPerShare">
        <link:definition>061500 - Disclosure - EARNINGS PER SHARE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
        <link:definition>061600 - Disclosure - COMMITMENTS AND CONTINGENCIES</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" id="ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent">
        <link:definition>061700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RisksAndConcentrations" id="RisksAndConcentrations">
        <link:definition>061800 - Disclosure - RISKS AND CONCENTRATIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RelatedPartyTransactions" id="RelatedPartyTransactions">
        <link:definition>061900 - Disclosure - RELATED PARTY TRANSACTIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/FairValueMeasurements" id="FairValueMeasurements">
        <link:definition>062000 - Disclosure - FAIR VALUE MEASUREMENTS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ShareRepurchasePrograms" id="ShareRepurchasePrograms">
        <link:definition>062100 - Disclosure - SHARE REPURCHASE PROGRAMS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/InsiderTradingArrangements" id="InsiderTradingArrangements">
        <link:definition>062200 - Disclosure - INSIDER TRADING ARRANGEMENTS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" id="SummaryOfSignificantAccountingPoliciesPolicies">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>070100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PdmcxJointVenturePolicies" id="PdmcxJointVenturePolicies">
        <!--Parent Role: PDMCX JOINT VENTURE-->
        <link:definition>070600 - Disclosure - PDMCX JOINT VENTURE (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RevenuePolicies" id="RevenuePolicies">
        <!--Parent Role: REVENUE-->
        <link:definition>071000 - Disclosure - REVENUE (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SharebasedCompensationPolicies" id="SharebasedCompensationPolicies">
        <!--Parent Role: SHARE-BASED COMPENSATION-->
        <link:definition>071200 - Disclosure - SHARE-BASED COMPENSATION (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxesPolicies" id="IncomeTaxesPolicies">
        <!--Parent Role: INCOME TAXES-->
        <link:definition>071400 - Disclosure - INCOME TAXES (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/FairValueMeasurementsPolicies" id="FairValueMeasurementsPolicies">
        <!--Parent Role: FAIR VALUE MEASUREMENTS-->
        <link:definition>072000 - Disclosure - FAIR VALUE MEASUREMENTS (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables" id="SummaryOfSignificantAccountingPoliciesTables">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>080100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccountsReceivableTables" id="AccountsReceivableTables">
        <!--Parent Role: ACCOUNTS RECEIVABLE-->
        <link:definition>080200 - Disclosure - ACCOUNTS RECEIVABLE (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherCurrentAssetsTables" id="OtherCurrentAssetsTables">
        <!--Parent Role: OTHER CURRENT ASSETS-->
        <link:definition>080300 - Disclosure - OTHER CURRENT ASSETS (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/InventoriesTables" id="InventoriesTables">
        <!--Parent Role: INVENTORIES-->
        <link:definition>080400 - Disclosure - INVENTORIES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetTables" id="PropertyPlantAndEquipmentNetTables">
        <!--Parent Role: PROPERTY, PLANT AND EQUIPMENT, NET-->
        <link:definition>080500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PdmcxJointVentureTables" id="PdmcxJointVentureTables">
        <!--Parent Role: PDMCX JOINT VENTURE-->
        <link:definition>080600 - Disclosure - PDMCX JOINT VENTURE (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccruedLiabilitiesTables" id="AccruedLiabilitiesTables">
        <!--Parent Role: ACCRUED LIABILITIES-->
        <link:definition>080700 - Disclosure - ACCRUED LIABILITIES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtTables" id="DebtTables">
        <!--Parent Role: DEBT-->
        <link:definition>080800 - Disclosure - DEBT (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherLiabilitiesTables" id="OtherLiabilitiesTables">
        <!--Parent Role: OTHER LIABILITIES-->
        <link:definition>080900 - Disclosure - OTHER LIABILITIES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RevenueTables" id="RevenueTables">
        <!--Parent Role: REVENUE-->
        <link:definition>081000 - Disclosure - REVENUE (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesTables" id="LeasesTables">
        <!--Parent Role: LEASES-->
        <link:definition>081100 - Disclosure - LEASES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SharebasedCompensationTables" id="SharebasedCompensationTables">
        <!--Parent Role: SHARE-BASED COMPENSATION-->
        <link:definition>081200 - Disclosure - SHARE-BASED COMPENSATION (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
        <!--Parent Role: INCOME TAXES-->
        <link:definition>081400 - Disclosure - INCOME TAXES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/EarningsPerShareTables" id="EarningsPerShareTables">
        <!--Parent Role: EARNINGS PER SHARE-->
        <link:definition>081500 - Disclosure - EARNINGS PER SHARE (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/CommitmentsAndContingenciesTables" id="CommitmentsAndContingenciesTables">
        <!--Parent Role: COMMITMENTS AND CONTINGENCIES-->
        <link:definition>081600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" id="ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables">
        <!--Parent Role: CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT-->
        <link:definition>081700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RisksAndConcentrationsTables" id="RisksAndConcentrationsTables">
        <!--Parent Role: RISKS AND CONCENTRATIONS-->
        <link:definition>081800 - Disclosure - RISKS AND CONCENTRATIONS (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/FairValueMeasurementsTables" id="FairValueMeasurementsTables">
        <!--Parent Role: FAIR VALUE MEASUREMENTS-->
        <link:definition>082000 - Disclosure - FAIR VALUE MEASUREMENTS (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ShareRepurchaseProgramsTables" id="ShareRepurchaseProgramsTables">
        <!--Parent Role: SHARE REPURCHASE PROGRAMS-->
        <link:definition>082100 - Disclosure - SHARE REPURCHASE PROGRAMS (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails" id="SummaryOfSignificantAccountingPoliciesBusinessDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" id="SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090102 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" id="SummaryOfSignificantAccountingPoliciesRestrictedCashDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090104 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails" id="SummaryOfSignificantAccountingPoliciesInvestmentsDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090106 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails" id="SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090108 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails" id="SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090110 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" id="SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090112 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" id="SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090114 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails" id="SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails">
        <!--Parent Role: SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090116 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccountsReceivableDetails" id="AccountsReceivableDetails">
        <!--Parent Role: ACCOUNTS RECEIVABLE-->
        <link:definition>090200 - Disclosure - ACCOUNTS RECEIVABLE (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherCurrentAssetsDetails" id="OtherCurrentAssetsDetails">
        <!--Parent Role: OTHER CURRENT ASSETS-->
        <link:definition>090300 - Disclosure - OTHER CURRENT ASSETS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/InventoriesDetails" id="InventoriesDetails">
        <!--Parent Role: INVENTORIES-->
        <link:definition>090400 - Disclosure - INVENTORIES (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails" id="PropertyPlantAndEquipmentNetDetails">
        <!--Parent Role: PROPERTY, PLANT AND EQUIPMENT, NET-->
        <link:definition>090500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PdmcxJointVentureVieDetails" id="PdmcxJointVentureVieDetails">
        <!--Parent Role: PDMCX JOINT VENTURE-->
        <link:definition>090600 - Disclosure - PDMCX JOINT VENTURE, VIE (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" id="PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails">
        <!--Parent Role: PDMCX JOINT VENTURE-->
        <link:definition>090602 - Disclosure - PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/AccruedLiabilitiesDetails" id="AccruedLiabilitiesDetails">
        <!--Parent Role: ACCRUED LIABILITIES-->
        <link:definition>090700 - Disclosure - ACCRUED LIABILITIES (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtLongtermDebtDetails" id="DebtLongtermDebtDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090800 - Disclosure - DEBT, Long-term Debt (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtFinanceLeasesDetails" id="DebtFinanceLeasesDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090802 - Disclosure - DEBT, Finance Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtXiamenProjectLoansDetails" id="DebtXiamenProjectLoansDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090804 - Disclosure - DEBT, Xiamen Project Loans (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails" id="DebtXiamenWorkingCapitalLoansDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090806 - Disclosure - DEBT, Xiamen Working Capital Loans (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtCorporateCreditAgreementDetails" id="DebtCorporateCreditAgreementDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090808 - Disclosure - DEBT, Corporate Credit Agreement (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/DebtInterestPaidForDebtDetails" id="DebtInterestPaidForDebtDetails">
        <!--Parent Role: DEBT-->
        <link:definition>090812 - Disclosure - DEBT, Interest Paid for Debt (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/OtherLiabilitiesDetails" id="OtherLiabilitiesDetails">
        <!--Parent Role: OTHER LIABILITIES-->
        <link:definition>090900 - Disclosure - OTHER LIABILITIES (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RevenueDisaggregationOfRevenueDetails" id="RevenueDisaggregationOfRevenueDetails">
        <!--Parent Role: REVENUE-->
        <link:definition>091000 - Disclosure - REVENUE, Disaggregation of Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails" id="RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails">
        <!--Parent Role: REVENUE-->
        <link:definition>091002 - Disclosure - REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" id="LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails">
        <!--Parent Role: LEASES-->
        <link:definition>091100 - Disclosure - LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" id="LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails">
        <!--Parent Role: LEASES-->
        <link:definition>091102 - Disclosure - LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" id="LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01">
        <!--Parent Role: LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)-->
        <link:definition>091104 - Disclosure - LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details) CALC 01</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesLeaseCostDetails" id="LeasesLeaseCostDetails">
        <!--Parent Role: LEASES-->
        <link:definition>091104 - Disclosure - LEASES, Lease Cost (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails" id="LeasesOperatingAndFinanceLeasesDetails">
        <!--Parent Role: LEASES-->
        <link:definition>091106 - Disclosure - LEASES, Operating and Finance Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/SharebasedCompensationDetails" id="SharebasedCompensationDetails">
        <!--Parent Role: SHARE-BASED COMPENSATION-->
        <link:definition>091200 - Disclosure - SHARE-BASED COMPENSATION (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/EmployeeRetirementPlansDetails" id="EmployeeRetirementPlansDetails">
        <!--Parent Role: EMPLOYEE RETIREMENT PLANS-->
        <link:definition>091300 - Disclosure - EMPLOYEE RETIREMENT PLANS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails" id="IncomeTaxesComponentsOfIncomeTaxesDetails">
        <!--Parent Role: INCOME TAXES-->
        <link:definition>091400 - Disclosure - INCOME TAXES, Components of Income Taxes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxesDetailsCalc01" id="IncomeTaxesDetailsCalc01">
        <!--Parent Role: INCOME TAXES, Components of Income Taxes (Details)-->
        <link:definition>091402 - Disclosure - INCOME TAXES (Details) CALC 01</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails" id="IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails">
        <!--Parent Role: INCOME TAXES-->
        <link:definition>091402 - Disclosure - INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/EarningsPerShareDetails" id="EarningsPerShareDetails">
        <!--Parent Role: EARNINGS PER SHARE-->
        <link:definition>091500 - Disclosure - EARNINGS PER SHARE (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/CommitmentsAndContingenciesDetails" id="CommitmentsAndContingenciesDetails">
        <!--Parent Role: COMMITMENTS AND CONTINGENCIES-->
        <link:definition>091600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails" id="ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails">
        <!--Parent Role: CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT-->
        <link:definition>091700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RisksAndConcentrationsDetails" id="RisksAndConcentrationsDetails">
        <!--Parent Role: RISKS AND CONCENTRATIONS-->
        <link:definition>091800 - Disclosure - RISKS AND CONCENTRATIONS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/RelatedPartyTransactionsDetails" id="RelatedPartyTransactionsDetails">
        <!--Parent Role: RELATED PARTY TRANSACTIONS-->
        <link:definition>091900 - Disclosure - RELATED PARTY TRANSACTIONS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/FairValueMeasurementsDetails" id="FairValueMeasurementsDetails">
        <!--Parent Role: FAIR VALUE MEASUREMENTS-->
        <link:definition>092000 - Disclosure - FAIR VALUE MEASUREMENTS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://photronics.com/role/ShareRepurchaseProgramsDetails" id="ShareRepurchaseProgramsDetails">
        <!--Parent Role: SHARE REPURCHASE PROGRAMS-->
        <link:definition>092100 - Disclosure - SHARE REPURCHASE PROGRAMS (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:import namespace="http://fasb.org/us-gaap/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/dei/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/country/2024" schemaLocation="https://xbrl.sec.gov/country/2024/country-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/currency/2024" schemaLocation="https://xbrl.sec.gov/currency/2024/currency-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/exch/2024" schemaLocation="https://xbrl.sec.gov/exch/2024/exch-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/naics/2024" schemaLocation="https://xbrl.sec.gov/naics/2024/naics-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/sic/2024" schemaLocation="https://xbrl.sec.gov/sic/2024/sic-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/stpr/2024" schemaLocation="https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/2004/ref" schemaLocation="http://www.xbrl.org/2004/ref-2004-08-10.xsd" />
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xs:import namespace="http://fasb.org/us-types/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xs:import namespace="http://fasb.org/srt/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" />
  <xs:import namespace="http://fasb.org/srt-types/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/ecd/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/cyd/2024" schemaLocation="https://xbrl.sec.gov/cyd/2024/cyd-2024.xsd" />
  <xs:element name="NetSettlementsOfRestrictedStockAwards" id="plab_NetSettlementsOfRestrictedStockAwards" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" />
  <xs:element name="ProceedsFromGovernmentIncentives" id="plab_ProceedsFromGovernmentIncentives" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" />
  <xs:element name="ExpectedRefundableFederalInvestmentTaxCredit" id="plab_ExpectedRefundableFederalInvestmentTaxCredit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" />
  <xs:element name="OtherMember" id="plab_OtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FlatPanelDisplaysMember" id="plab_FlatPanelDisplaysMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="HighEndFlatPanelDisplaysMember" id="plab_HighEndFlatPanelDisplaysMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="MainstreamFlatPanelDisplaysMember" id="plab_MainstreamFlatPanelDisplaysMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="IntegratedCircuitsMember" id="plab_IntegratedCircuitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="HighEndIntegratedCircuitsMember" id="plab_HighEndIntegratedCircuitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="MainstreamIntegratedCircuitsMember" id="plab_MainstreamIntegratedCircuitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="OutstandingCommittedBalanceForCrossDefaultProvision" id="plab_OutstandingCommittedBalanceForCrossDefaultProvision" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="FinanceLeaseMember" id="plab_FinanceLeaseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="Seven2MillionFinanceLeaseMember" id="plab_Seven2MillionFinanceLeaseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="Three55MillionFinanceLeaseMember" id="plab_Three55MillionFinanceLeaseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="MonthlyMember" id="plab_MonthlyMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FollowedByThirtySixMonthsMember" id="plab_FollowedByThirtySixMonthsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FirstThreeMonthsMember" id="plab_FirstThreeMonthsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FollowingNineMonthsMember" id="plab_FollowingNineMonthsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ProductInvoiceTerm" id="plab_ProductInvoiceTerm" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="InterestExpenseNetOfSubsidies" id="plab_InterestExpenseNetOfSubsidies" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" />
  <xs:element name="MinimumAgeOfEmployeesToComeUnderRetirementPlan" id="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="NumberOfMonthsOfServiceCompleted" id="plab_NumberOfMonthsOfServiceCompleted" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" id="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" id="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" id="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" />
  <xs:element name="ShareRepurchaseProgramsMember" id="plab_ShareRepurchaseProgramsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="September2020AnnouncedProgramMember" id="plab_September2020AnnouncedProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="StockRepurchaseProgramCommencementDate" id="plab_StockRepurchaseProgramCommencementDate" type="xbrli:dateItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="PrepaidAndRefundableIncomeTaxes" id="plab_PrepaidAndRefundableIncomeTaxes" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="FederalInvestmentTaxCreditsRefundReceivableCurrent" id="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" id="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="PDMCXMember" id="plab_PDMCXMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="PhotronicsAndDNPMember" id="plab_PhotronicsAndDNPMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="VariableInterestEntityAbstract" id="plab_VariableInterestEntityAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" id="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" id="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="DepreciationAndAmortizationExpenseTableTextBlock" id="plab_DepreciationAndAmortizationExpenseTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="FinanceLeaseRightOfUseAssetsTableTextBlock" id="plab_FinanceLeaseRightOfUseAssetsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="RelatedPartyAgreementAbstract" id="plab_RelatedPartyAgreementAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="MajorCustomer1Member" id="plab_MajorCustomer1Member" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccruedServicesContractedCurrent" id="plab_AccruedServicesContractedCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="AccruedOperatingLeasesCurrent" id="plab_AccruedOperatingLeasesCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="AccruedPropertyPlantAndEquipmentCurrent" id="plab_AccruedPropertyPlantAndEquipmentCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" id="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" />
  <xs:element name="StockOptionsActivityAbstract" id="plab_StockOptionsActivityAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="NumberOfExecutivesDeparted" id="plab_NumberOfExecutivesDeparted" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="EmployeeStockPurchasePlanPolicyTextBlock" id="plab_EmployeeStockPurchasePlanPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="LongTermDebtMaturingInYearOneAbstract" id="plab_LongTermDebtMaturingInYearOneAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" id="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="FinanceLeaseLiabilityPaymentsDueAfterYearFour" id="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="CashAndNonCashInformationRelatedToLeasesAbstract" id="plab_CashAndNonCashInformationRelatedToLeasesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" id="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ManufacturingFacilitiesByGeographicalRegionTable" id="plab_ManufacturingFacilitiesByGeographicalRegionTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ManufacturingFacilitiesByGeographicalRegionLineItems" id="plab_ManufacturingFacilitiesByGeographicalRegionLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ManufacturingFacilitiesAbstract" id="plab_ManufacturingFacilitiesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="NumberOfManufacturingFacilities" id="plab_NumberOfManufacturingFacilities" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="CustomerAMember" id="plab_CustomerAMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CustomerCMember" id="plab_CustomerCMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CustomerBMember" id="plab_CustomerBMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="EuropeAndOtherMember" id="plab_EuropeAndOtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CustomerAccountedAbstract" id="plab_CustomerAccountedAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="DeferredTaxAssetsLeaseLiability" id="plab_DeferredTaxAssetsLeaseLiability" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="DeferredTaxLiabilitiesRightOfUseAsset" id="plab_DeferredTaxLiabilitiesRightOfUseAsset" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" id="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CashAndNonCashInformationRelatedToLeasesTextBlock" id="plab_CashAndNonCashInformationRelatedToLeasesTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" id="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" id="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" id="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ProjectLoansAbstract" id="plab_ProjectLoansAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ProjectLoanMember" id="plab_ProjectLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CommitmentAndContingenciesAbstract" id="plab_CommitmentAndContingenciesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="MinimumRemainingTermOfPlantAndEquipment" id="plab_MinimumRemainingTermOfPlantAndEquipment" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="WorkingCapitalLoanMember" id="plab_WorkingCapitalLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" id="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" id="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccumulatedOtherComprehensiveIncomeOtherMember" id="plab_AccumulatedOtherComprehensiveIncomeOtherMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="GovernmentGrantsPolicyTextBlock" id="plab_GovernmentGrantsPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="TreasuryStockPolicyTextBlock" id="plab_TreasuryStockPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ForeignCurrencyTransactionsPolicyTextBlock" id="plab_ForeignCurrencyTransactionsPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="PrinciplesOfConsolidationAbstract" id="plab_PrinciplesOfConsolidationAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="PercentageOfOwnershipInterestInSubsidiaries" id="plab_PercentageOfOwnershipInterestInSubsidiaries" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" />
  <xs:element name="AntidilutiveSecuritiesAbstract" id="plab_AntidilutiveSecuritiesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="GovernmentGrantsAbstract" id="plab_GovernmentGrantsAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="IncreaseDecreaseInPropertyAndEquipmentNet" id="plab_IncreaseDecreaseInPropertyAndEquipmentNet" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" />
  <xs:element name="ProductWarrantyAbstract" id="plab_ProductWarrantyAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="PeriodOfWarranty" id="plab_PeriodOfWarranty" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="BacklogOfOrdersAbstract" id="plab_BacklogOfOrdersAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CustomerOrdersExtendedTimingOfSatisfactionPeriod" id="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="CustomerOrdersExpectedTimingOfSatisfactionPeriod" id="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" id="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="TaxCreditCarryforwardAbstract" id="plab_TaxCreditCarryforwardAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AmendedAndRestatedCreditAgreementMember" id="plab_AmendedAndRestatedCreditAgreementMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="UnrecognizedTaxBenefitNoncurrent" id="plab_UnrecognizedTaxBenefitNoncurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>plab-20241031_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 24.12.1.5274 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:arcroleRef arcroleURI="https://xbrl.org/2023/arcrole/summation-item" xlink:type="simple" xlink:href="https://www.xbrl.org/2023/calculation-1.1.xsd#summation-item" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingenciesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingenciesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesComponentsOfIncomeTaxesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtLongtermDebtDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/InventoriesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssetsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssetsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivableDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivableDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesInvestmentsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfIncome" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedBalanceSheets" />
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MinorityInterest" xlink:label="MinorityInterest" xlink:title="MinorityInterest" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="MinorityInterest" xlink:title="calculation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to MinorityInterest" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="PreferredStockValue" xlink:title="PreferredStockValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="PreferredStockValue" xlink:title="calculation: StockholdersEquity to PreferredStockValue" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="CommonStockValue" xlink:title="calculation: StockholdersEquity to CommonStockValue" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="calculation: StockholdersEquity to RetainedEarningsAccumulatedDeficit" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="calculation: StockholdersEquity to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AdditionalPaidInCapital" xlink:title="calculation: StockholdersEquity to AdditionalPaidInCapital" order="4.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="StockholdersEquity" xlink:title="calculation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to StockholdersEquity" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="calculation: LiabilitiesAndStockholdersEquity to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="LongTermDebtAndCapitalLeaseObligationsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="calculation: LiabilitiesCurrent to LongTermDebtAndCapitalLeaseObligationsCurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccruedLiabilitiesCurrent" xlink:title="calculation: LiabilitiesCurrent to AccruedLiabilitiesCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccountsPayableCurrent" xlink:title="calculation: LiabilitiesCurrent to AccountsPayableCurrent" order="3.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LiabilitiesCurrent" xlink:title="calculation: Liabilities to LiabilitiesCurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Liabilities" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="calculation: Liabilities to OtherLiabilitiesNoncurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="calculation: Liabilities to LongTermDebtAndCapitalLeaseObligations" order="3.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="Liabilities" xlink:title="calculation: LiabilitiesAndStockholdersEquity to Liabilities" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="calculation: Assets to PropertyPlantAndEquipmentNet" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="OtherAssetsNoncurrent" xlink:title="calculation: Assets to OtherAssetsNoncurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="AccountsReceivableNetCurrent" xlink:title="calculation: AssetsCurrent to AccountsReceivableNetCurrent" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="InventoryNet" xlink:title="calculation: AssetsCurrent to InventoryNet" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="OtherAssetsCurrent" xlink:title="calculation: AssetsCurrent to OtherAssetsCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermInvestments" xlink:label="ShortTermInvestments" xlink:title="ShortTermInvestments" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="ShortTermInvestments" xlink:title="calculation: AssetsCurrent to ShortTermInvestments" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="calculation: AssetsCurrent to CashAndCashEquivalentsAtCarryingValue" order="6.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsCurrent" xlink:title="calculation: Assets to AssetsCurrent" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="calculation: Assets to DeferredIncomeTaxAssetsNet" order="4.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfIncome">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ProfitLoss" xlink:to="IncomeTaxExpenseBenefit" xlink:title="calculation: ProfitLoss to IncomeTaxExpenseBenefit" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="ForeignCurrencyTransactionGainLossBeforeTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to ForeignCurrencyTransactionGainLossBeforeTax" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_InterestExpenseNetOfSubsidies" xlink:label="InterestExpenseNetOfSubsidies" xlink:title="InterestExpenseNetOfSubsidies" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="InterestExpenseNetOfSubsidies" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to InterestExpenseNetOfSubsidies" order="3.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="CostOfGoodsAndServicesSold" xlink:title="calculation: GrossProfit to CostOfGoodsAndServicesSold" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="calculation: GrossProfit to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="GrossProfit" xlink:title="calculation: OperatingIncomeLoss to GrossProfit" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="GainLossOnSaleOfPropertyPlantEquipment" xlink:title="GainLossOnSaleOfPropertyPlantEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="GainLossOnSaleOfPropertyPlantEquipment" xlink:title="calculation: OperatingIncomeLoss to GainLossOnSaleOfPropertyPlantEquipment" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="SellingGeneralAndAdministrativeExpense" xlink:title="SellingGeneralAndAdministrativeExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingExpenses" xlink:to="SellingGeneralAndAdministrativeExpense" xlink:title="calculation: OperatingExpenses to SellingGeneralAndAdministrativeExpense" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingExpenses" xlink:to="ResearchAndDevelopmentExpense" xlink:title="calculation: OperatingExpenses to ResearchAndDevelopmentExpense" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="OperatingExpenses" xlink:title="calculation: OperatingIncomeLoss to OperatingExpenses" order="1.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="OperatingIncomeLoss" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to OperatingIncomeLoss" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to OtherNonoperatingIncomeExpense" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ProfitLoss" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="calculation: ProfitLoss to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="ProfitLoss" xlink:title="calculation: NetIncomeLoss to ProfitLoss" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="NetIncomeLossAttributableToNoncontrollingInterest" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="calculation: NetIncomeLoss to NetIncomeLossAttributableToNoncontrollingInterest" order="1.0" weight="-1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="ProfitLoss" xlink:title="calculation: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to ProfitLoss" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="OtherComprehensiveIncomeLossNetOfTax" xlink:title="OtherComprehensiveIncomeLossNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:label="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherComprehensiveIncomeLossNetOfTax" xlink:to="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="calculation: OtherComprehensiveIncomeLossNetOfTax to OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherComprehensiveIncomeLossNetOfTax" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="calculation: OtherComprehensiveIncomeLossNetOfTax to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="4.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="OtherComprehensiveIncomeLossNetOfTax" xlink:title="calculation: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to OtherComprehensiveIncomeLossNetOfTax" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="calculation: ComprehensiveIncomeNetOfTax to ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="calculation: ComprehensiveIncomeNetOfTax to ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" order="1.0" weight="-1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsToAcquirePropertyPlantAndEquipment" order="0.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="PaymentsToAcquireShortTermInvestments" xlink:title="PaymentsToAcquireShortTermInvestments" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsToAcquireShortTermInvestments" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsToAcquireShortTermInvestments" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProceedsFromGovernmentIncentives" xlink:label="ProceedsFromGovernmentIncentives" xlink:title="ProceedsFromGovernmentIncentives" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="ProceedsFromGovernmentIncentives" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to ProceedsFromGovernmentIncentives" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="PaymentsToAcquireIntangibleAssets" xlink:title="PaymentsToAcquireIntangibleAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsToAcquireIntangibleAssets" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsToAcquireIntangibleAssets" order="5.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="PaymentsForProceedsFromOtherInvestingActivities" xlink:title="PaymentsForProceedsFromOtherInvestingActivities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsForProceedsFromOtherInvestingActivities" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsForProceedsFromOtherInvestingActivities" order="7.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInInvestingActivities" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NetSettlementsOfRestrictedStockAwards" xlink:label="NetSettlementsOfRestrictedStockAwards" xlink:title="NetSettlementsOfRestrictedStockAwards" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="NetSettlementsOfRestrictedStockAwards" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to NetSettlementsOfRestrictedStockAwards" order="5.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xlink:label="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="RepaymentsOfDebtAndCapitalLeaseObligations" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to RepaymentsOfDebtAndCapitalLeaseObligations" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMinorityShareholders" xlink:label="ProceedsFromMinorityShareholders" xlink:title="ProceedsFromMinorityShareholders" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="ProceedsFromMinorityShareholders" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to ProceedsFromMinorityShareholders" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="PaymentsForRepurchaseOfCommonStock" xlink:title="PaymentsForRepurchaseOfCommonStock" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="PaymentsForRepurchaseOfCommonStock" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to PaymentsForRepurchaseOfCommonStock" order="6.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" order="9.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInFinancingActivities" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="ProfitLoss" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to ProfitLoss" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="ShareBasedCompensation" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to ShareBasedCompensation" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsReceivable" order="6.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="AmortizationOfIntangibleAssets" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to AmortizationOfIntangibleAssets" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" order="9.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOtherCurrentAssets" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOtherCurrentAssets" order="8.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to DeferredIncomeTaxExpenseBenefit" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="DepreciationDepletionAndAmortization" xlink:title="DepreciationDepletionAndAmortization" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="DepreciationDepletionAndAmortization" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to DepreciationDepletionAndAmortization" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInInventories" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInInventories" order="7.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInOperatingActivities" order="4.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="AvailableForSaleDebtSecuritiesAmortizedCostBasis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="calculation: AvailableForSaleDebtSecuritiesAmortizedCostBasis to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="calculation: AvailableForSaleDebtSecuritiesAmortizedCostBasis to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="AvailableForSaleSecuritiesDebtSecurities" xlink:title="AvailableForSaleSecuritiesDebtSecurities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="AvailableForSaleSecuritiesDebtSecurities" xlink:title="calculation: AvailableForSaleDebtSecuritiesAmortizedCostBasis to AvailableForSaleSecuritiesDebtSecurities" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivableDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="UnbilledReceivablesCurrent" xlink:title="UnbilledReceivablesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccountsReceivableNetCurrent" xlink:to="UnbilledReceivablesCurrent" xlink:title="calculation: AccountsReceivableNetCurrent to UnbilledReceivablesCurrent" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="AccountsReceivableGrossCurrent" xlink:title="AccountsReceivableGrossCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccountsReceivableNetCurrent" xlink:to="AccountsReceivableGrossCurrent" xlink:title="calculation: AccountsReceivableNetCurrent to AccountsReceivableGrossCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccountsReceivableNetCurrent" xlink:to="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="calculation: AccountsReceivableNetCurrent to AllowanceForDoubtfulAccountsReceivableCurrent" order="1.0" weight="-1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssetsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PrepaidAndRefundableIncomeTaxes" xlink:label="PrepaidAndRefundableIncomeTaxes" xlink:title="PrepaidAndRefundableIncomeTaxes" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherAssetsCurrent" xlink:to="PrepaidAndRefundableIncomeTaxes" xlink:title="calculation: OtherAssetsCurrent to PrepaidAndRefundableIncomeTaxes" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherAssetsCurrent" xlink:to="ContractWithCustomerAssetNetCurrent" xlink:title="calculation: OtherAssetsCurrent to ContractWithCustomerAssetNetCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsMiscellaneousCurrent" xlink:label="OtherAssetsMiscellaneousCurrent" xlink:title="OtherAssetsMiscellaneousCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherAssetsCurrent" xlink:to="OtherAssetsMiscellaneousCurrent" xlink:title="calculation: OtherAssetsCurrent to OtherAssetsMiscellaneousCurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherAssetsCurrent" xlink:to="PrepaidExpenseCurrent" xlink:title="calculation: OtherAssetsCurrent to PrepaidExpenseCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValueAddedTaxReceivableCurrent" xlink:label="ValueAddedTaxReceivableCurrent" xlink:title="ValueAddedTaxReceivableCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherAssetsCurrent" xlink:to="ValueAddedTaxReceivableCurrent" xlink:title="calculation: OtherAssetsCurrent to ValueAddedTaxReceivableCurrent" order="0.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/InventoriesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryFinishedGoods" xlink:title="calculation: InventoryNet to InventoryFinishedGoods" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="InventoryWorkInProcess" xlink:title="InventoryWorkInProcess" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryWorkInProcess" xlink:title="calculation: InventoryNet to InventoryWorkInProcess" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="InventoryRawMaterialsNetOfReserves" xlink:title="InventoryRawMaterialsNetOfReserves" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryRawMaterialsNetOfReserves" xlink:title="calculation: InventoryNet to InventoryRawMaterialsNetOfReserves" order="3.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="calculation: PropertyPlantAndEquipmentNet to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="PropertyPlantAndEquipmentGross" xlink:title="calculation: PropertyPlantAndEquipmentNet to PropertyPlantAndEquipmentGross" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="FinanceLeaseRightOfUseAsset" xlink:title="FinanceLeaseRightOfUseAsset" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetAccumulatedAmortization" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseRightOfUseAsset" xlink:to="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="calculation: FinanceLeaseRightOfUseAsset to FinanceLeaseRightOfUseAssetAccumulatedAmortization" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseRightOfUseAsset" xlink:to="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="calculation: FinanceLeaseRightOfUseAsset to FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" order="0.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LiabilitiesCurrent" xlink:title="calculation: Liabilities to LiabilitiesCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LiabilitiesNoncurrent" xlink:title="calculation: Liabilities to LiabilitiesNoncurrent" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsNet" xlink:to="Liabilities" xlink:title="calculation: AssetsNet to Liabilities" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsCurrent" xlink:title="calculation: Assets to AssetsCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsNoncurrent" xlink:title="calculation: Assets to AssetsNoncurrent" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsNet" xlink:to="Assets" xlink:title="calculation: AssetsNet to Assets" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="OtherAccruedLiabilitiesCurrent" xlink:title="OtherAccruedLiabilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="OtherAccruedLiabilitiesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to OtherAccruedLiabilitiesCurrent" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedOperatingLeasesCurrent" xlink:label="AccruedOperatingLeasesCurrent" xlink:title="AccruedOperatingLeasesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccruedOperatingLeasesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccruedOperatingLeasesCurrent" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to ContractWithCustomerLiabilityCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="EmployeeRelatedLiabilitiesCurrent" xlink:title="EmployeeRelatedLiabilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="EmployeeRelatedLiabilitiesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to EmployeeRelatedLiabilitiesCurrent" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:label="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="AccrualForTaxesOtherThanIncomeTaxesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccrualForTaxesOtherThanIncomeTaxesCurrent" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedPropertyPlantAndEquipmentCurrent" xlink:label="AccruedPropertyPlantAndEquipmentCurrent" xlink:title="AccruedPropertyPlantAndEquipmentCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccruedPropertyPlantAndEquipmentCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccruedPropertyPlantAndEquipmentCurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="AccruedIncomeTaxesCurrent" xlink:title="AccruedIncomeTaxesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccruedIncomeTaxesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccruedIncomeTaxesCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedServicesContractedCurrent" xlink:label="AccruedServicesContractedCurrent" xlink:title="AccruedServicesContractedCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccruedServicesContractedCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccruedServicesContractedCurrent" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedUtilitiesCurrent" xlink:label="AccruedUtilitiesCurrent" xlink:title="AccruedUtilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AccruedLiabilitiesCurrent" xlink:to="AccruedUtilitiesCurrent" xlink:title="calculation: AccruedLiabilitiesCurrent to AccruedUtilitiesCurrent" order="6.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="calculation: LongTermDebtAndCapitalLeaseObligations to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="calculation: LongTermDebtAndCapitalLeaseObligations to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="calculation: LongTermDebtAndCapitalLeaseObligations to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="calculation: LongTermDebtAndCapitalLeaseObligations to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DebtLongtermAndShorttermCombinedAmount" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="calculation: DebtLongtermAndShorttermCombinedAmount to LongTermDebtAndCapitalLeaseObligations" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DebtLongtermAndShorttermCombinedAmount" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="calculation: DebtLongtermAndShorttermCombinedAmount to LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" order="0.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSundryLiabilitiesNoncurrent" xlink:label="OtherSundryLiabilitiesNoncurrent" xlink:title="OtherSundryLiabilitiesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="OtherSundryLiabilitiesNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to OtherSundryLiabilitiesNoncurrent" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="AccruedIncomeTaxesNoncurrent" xlink:title="AccruedIncomeTaxesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="AccruedIncomeTaxesNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to AccruedIncomeTaxesNoncurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitNoncurrent" xlink:label="UnrecognizedTaxBenefitNoncurrent" xlink:title="UnrecognizedTaxBenefitNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="UnrecognizedTaxBenefitNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to UnrecognizedTaxBenefitNoncurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to ContractWithCustomerLiabilityNoncurrent" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to OperatingLeaseLiabilityNoncurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xlink:label="PostemploymentBenefitsLiabilityNoncurrent" xlink:title="PostemploymentBenefitsLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="PostemploymentBenefitsLiabilityNoncurrent" xlink:title="calculation: OtherLiabilitiesNoncurrent to PostemploymentBenefitsLiabilityNoncurrent" order="3.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingLeaseLiability" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="calculation: OperatingLeaseLiability to OperatingLeaseLiabilityNoncurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingLeaseLiability" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="calculation: OperatingLeaseLiability to OperatingLeaseLiabilityCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="FinanceLeaseLiabilityNoncurrent" xlink:title="FinanceLeaseLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiability" xlink:to="FinanceLeaseLiabilityNoncurrent" xlink:title="calculation: FinanceLeaseLiability to FinanceLeaseLiabilityNoncurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="FinanceLeaseLiabilityCurrent" xlink:title="FinanceLeaseLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiability" xlink:to="FinanceLeaseLiabilityCurrent" xlink:title="calculation: FinanceLeaseLiability to FinanceLeaseLiabilityCurrent" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="FinanceLeaseLiabilityPaymentsDue" xlink:title="FinanceLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueYearFour" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityPaymentsDueYearFour" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="FinanceLeaseLiabilityPaymentsDueYearTwo" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityPaymentsDueYearTwo" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="FinanceLeaseLiabilityPaymentsDueYearThree" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityPaymentsDueYearThree" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityPaymentsDueAfterYearFour" order="6.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="FinanceLeaseLiabilityPaymentsDue" xlink:title="FinanceLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="FinanceLeaseLiabilityUndiscountedExcessAmount" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiabilityUndiscountedExcessAmount" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="FinanceLeaseLiability" xlink:title="calculation: FinanceLeaseLiabilityPaymentsDue to FinanceLeaseLiability" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="OperatingLeaseLiability" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to OperatingLeaseLiability" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="CurrentIncomeTaxExpenseBenefit" xlink:title="CurrentIncomeTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="CurrentStateAndLocalTaxExpenseBenefit" xlink:title="CurrentStateAndLocalTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CurrentIncomeTaxExpenseBenefit" xlink:to="CurrentStateAndLocalTaxExpenseBenefit" xlink:title="calculation: CurrentIncomeTaxExpenseBenefit to CurrentStateAndLocalTaxExpenseBenefit" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="CurrentForeignTaxExpenseBenefit" xlink:title="CurrentForeignTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CurrentIncomeTaxExpenseBenefit" xlink:to="CurrentForeignTaxExpenseBenefit" xlink:title="calculation: CurrentIncomeTaxExpenseBenefit to CurrentForeignTaxExpenseBenefit" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="CurrentFederalTaxExpenseBenefit" xlink:title="CurrentFederalTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CurrentIncomeTaxExpenseBenefit" xlink:to="CurrentFederalTaxExpenseBenefit" xlink:title="calculation: CurrentIncomeTaxExpenseBenefit to CurrentFederalTaxExpenseBenefit" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="CurrentIncomeTaxExpenseBenefit" xlink:title="calculation: IncomeTaxExpenseBenefit to CurrentIncomeTaxExpenseBenefit" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="DeferredStateAndLocalIncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="calculation: DeferredIncomeTaxExpenseBenefit to DeferredStateAndLocalIncomeTaxExpenseBenefit" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="DeferredForeignIncomeTaxExpenseBenefit" xlink:title="DeferredForeignIncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="DeferredForeignIncomeTaxExpenseBenefit" xlink:title="calculation: DeferredIncomeTaxExpenseBenefit to DeferredForeignIncomeTaxExpenseBenefit" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="DeferredFederalIncomeTaxExpenseBenefit" xlink:title="DeferredFederalIncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="DeferredFederalIncomeTaxExpenseBenefit" xlink:title="calculation: DeferredIncomeTaxExpenseBenefit to DeferredFederalIncomeTaxExpenseBenefit" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="calculation: IncomeTaxExpenseBenefit to DeferredIncomeTaxExpenseBenefit" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="DeferredTaxAssetsLiabilitiesNet" xlink:title="DeferredTaxAssetsLiabilitiesNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="DeferredTaxAssetsNet" xlink:title="DeferredTaxAssetsNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="DeferredTaxAssetsValuationAllowance" xlink:title="DeferredTaxAssetsValuationAllowance" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsNet" xlink:to="DeferredTaxAssetsValuationAllowance" xlink:title="calculation: DeferredTaxAssetsNet to DeferredTaxAssetsValuationAllowance" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="DeferredTaxAssetsGross" xlink:title="DeferredTaxAssetsGross" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:label="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="DeferredTaxAssetsOperatingLossCarryforwards" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsOperatingLossCarryforwards" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="DeferredTaxAssetsPropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsPropertyPlantAndEquipment" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxAssetsLeaseLiability" xlink:label="DeferredTaxAssetsLeaseLiability" xlink:title="DeferredTaxAssetsLeaseLiability" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsLeaseLiability" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsLeaseLiability" order="9.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="DeferredTaxAssetsInProcessResearchAndDevelopment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsInProcessResearchAndDevelopment" order="10.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:label="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="DeferredTaxAssetsTaxCreditCarryforwardsOther" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsGross" xlink:to="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="calculation: DeferredTaxAssetsGross to DeferredTaxAssetsTaxCreditCarryforwardsOther" order="3.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsNet" xlink:to="DeferredTaxAssetsGross" xlink:title="calculation: DeferredTaxAssetsNet to DeferredTaxAssetsGross" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="DeferredTaxAssetsNet" xlink:title="calculation: DeferredTaxAssetsLiabilitiesNet to DeferredTaxAssetsNet" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="DeferredIncomeTaxLiabilities" xlink:title="DeferredIncomeTaxLiabilities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="DeferredTaxLiabilitiesOther" xlink:title="DeferredTaxLiabilitiesOther" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredIncomeTaxLiabilities" xlink:to="DeferredTaxLiabilitiesOther" xlink:title="calculation: DeferredIncomeTaxLiabilities to DeferredTaxLiabilitiesOther" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="DeferredTaxLiabilitiesRightOfUseAsset" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredIncomeTaxLiabilities" xlink:to="DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="calculation: DeferredIncomeTaxLiabilities to DeferredTaxLiabilitiesRightOfUseAsset" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="DeferredIncomeTaxLiabilities" xlink:title="calculation: DeferredTaxAssetsLiabilitiesNet to DeferredIncomeTaxLiabilities" order="1.0" weight="-1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesDetailsCalc01">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="DeferredTaxAssetsLiabilitiesNet" xlink:title="DeferredTaxAssetsLiabilitiesNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="calculation: DeferredTaxAssetsLiabilitiesNet to DeferredIncomeTaxAssetsNet" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="DeferredIncomeTaxLiabilitiesNet" xlink:title="DeferredIncomeTaxLiabilitiesNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="DeferredIncomeTaxLiabilitiesNet" xlink:title="calculation: DeferredTaxAssetsLiabilitiesNet to DeferredIncomeTaxLiabilitiesNet" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="IncomeTaxReconciliationTaxCredits" xlink:title="IncomeTaxReconciliationTaxCredits" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationTaxCredits" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationTaxCredits" order="13.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationForeignIncomeTaxRateDifferential" order="9.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:label="IncomeTaxReconciliationTaxContingencies" xlink:title="IncomeTaxReconciliationTaxContingencies" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationTaxContingencies" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationTaxContingencies" order="14.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="IncomeTaxReconciliationOtherAdjustments" xlink:title="IncomeTaxReconciliationOtherAdjustments" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationOtherAdjustments" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationOtherAdjustments" order="18.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeTaxExpenseBenefit" xlink:to="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="calculation: IncomeTaxExpenseBenefit to IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to WeightedAverageNumberOfSharesOutstandingBasic" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="calculation: WeightedAverageNumberDilutedSharesOutstandingAdjustment to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="NetIncomeLossAttributableToParentDiluted" xlink:title="NetIncomeLossAttributableToParentDiluted" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLossAttributableToParentDiluted" xlink:to="NetIncomeLoss" xlink:title="calculation: NetIncomeLossAttributableToParentDiluted to NetIncomeLoss" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DilutiveSecurities" xlink:label="DilutiveSecurities" xlink:title="DilutiveSecurities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLossAttributableToParentDiluted" xlink:to="DilutiveSecurities" xlink:title="calculation: NetIncomeLossAttributableToParentDiluted to DilutiveSecurities" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingenciesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligation" xlink:label="ContractualObligation" xlink:title="ContractualObligation" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFifthYear" xlink:label="ContractualObligationDueInFifthYear" xlink:title="ContractualObligationDueInFifthYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueInFifthYear" xlink:title="calculation: ContractualObligation to ContractualObligationDueInFifthYear" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFourthYear" xlink:label="ContractualObligationDueInFourthYear" xlink:title="ContractualObligationDueInFourthYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueInFourthYear" xlink:title="calculation: ContractualObligation to ContractualObligationDueInFourthYear" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:label="ContractualObligationDueInNextTwelveMonths" xlink:title="ContractualObligationDueInNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueInNextTwelveMonths" xlink:title="calculation: ContractualObligation to ContractualObligationDueInNextTwelveMonths" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInSecondYear" xlink:label="ContractualObligationDueInSecondYear" xlink:title="ContractualObligationDueInSecondYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueInSecondYear" xlink:title="calculation: ContractualObligation to ContractualObligationDueInSecondYear" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInThirdYear" xlink:label="ContractualObligationDueInThirdYear" xlink:title="ContractualObligationDueInThirdYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueInThirdYear" xlink:title="calculation: ContractualObligation to ContractualObligationDueInThirdYear" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueAfterFifthYear" xlink:label="ContractualObligationDueAfterFifthYear" xlink:title="ContractualObligationDueAfterFifthYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ContractualObligation" xlink:to="ContractualObligationDueAfterFifthYear" xlink:title="calculation: ContractualObligation to ContractualObligationDueAfterFifthYear" order="5.0" weight="1.0" />
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>plab-20241031_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 24.12.1.5274 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:t1="http://xbrl.org/2005/xbrldt">
  <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd#eedm" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchaseProgramsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchaseProgramsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RelatedPartyTransactionsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RelatedPartyTransactionsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrationsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrationsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingenciesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingenciesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesComponentsOfIncomeTaxesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/EmployeeRetirementPlansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#EmployeeRetirementPlansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesOperatingAndFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesLeaseCostDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesLeaseCostDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueDisaggregationOfRevenueDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtInterestPaidForDebtDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtInterestPaidForDebtDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtCorporateCreditAgreementDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtCorporateCreditAgreementDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtXiamenWorkingCapitalLoansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtXiamenProjectLoansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtXiamenProjectLoansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtLongtermDebtDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureVieDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureVieDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/InventoriesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssetsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssetsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivableDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivableDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesInvestmentsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesBusinessDetails" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchaseProgramsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchaseProgramsTables" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsTables" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrationsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrationsTables" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingenciesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingenciesTables" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesTables" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationTables" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationTables" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesTables" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueTables" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueTables" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilitiesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilitiesTables" />
  <link:roleRef roleURI="http://photronics.com/role/DebtTables" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtTables" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilitiesTables" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureTables" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureTables" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetTables" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNetTables" />
  <link:roleRef roleURI="http://photronics.com/role/InventoriesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#InventoriesTables" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssetsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssetsTables" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivableTables" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivableTables" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesTables" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/RevenuePolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenuePolicies" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVenturePolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVenturePolicies" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/InsiderTradingArrangements" xlink:type="simple" xlink:href="plab-20241031.xsd#InsiderTradingArrangements" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchasePrograms" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchasePrograms" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurements" />
  <link:roleRef roleURI="http://photronics.com/role/RelatedPartyTransactions" xlink:type="simple" xlink:href="plab-20241031.xsd#RelatedPartyTransactions" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrations" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrations" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingencies" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingencies" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShare" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxes" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxes" />
  <link:roleRef roleURI="http://photronics.com/role/EmployeeRetirementPlans" xlink:type="simple" xlink:href="plab-20241031.xsd#EmployeeRetirementPlans" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensation" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensation" />
  <link:roleRef roleURI="http://photronics.com/role/Leases" xlink:type="simple" xlink:href="plab-20241031.xsd#Leases" />
  <link:roleRef roleURI="http://photronics.com/role/Revenue" xlink:type="simple" xlink:href="plab-20241031.xsd#Revenue" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilities" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilities" />
  <link:roleRef roleURI="http://photronics.com/role/Debt" xlink:type="simple" xlink:href="plab-20241031.xsd#Debt" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilities" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVenture" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVenture" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNet" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNet" />
  <link:roleRef roleURI="http://photronics.com/role/Inventories" xlink:type="simple" xlink:href="plab-20241031.xsd#Inventories" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssets" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssets" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivable" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivable" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfEquity" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfEquity" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfIncome" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://photronics.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="plab-20241031.xsd#DocumentAndEntityInformation" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DocumentAndEntityInformation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedBalanceSheets" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfIncome" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="definition: StatementLineItems to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="SharesOutstanding" xlink:title="SharesOutstanding" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="SharesOutstanding" xlink:title="definition: StatementLineItems to SharesOutstanding" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="ProfitLoss" xlink:title="definition: StatementLineItems to ProfitLoss" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="OtherComprehensiveIncomeLossNetOfTax" xlink:title="OtherComprehensiveIncomeLossNetOfTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="OtherComprehensiveIncomeLossNetOfTax" xlink:title="definition: StatementLineItems to OtherComprehensiveIncomeLossNetOfTax" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="StockIssuedDuringPeriodValueShareBasedCompensation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodValueShareBasedCompensation" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="StockIssuedDuringPeriodSharesShareBasedCompensation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodSharesShareBasedCompensation" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="definition: StatementLineItems to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="definition: StatementLineItems to NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="TreasuryStockValueAcquiredCostMethod" xlink:title="TreasuryStockValueAcquiredCostMethod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="TreasuryStockValueAcquiredCostMethod" xlink:title="definition: StatementLineItems to TreasuryStockValueAcquiredCostMethod" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="TreasuryStockSharesAcquired" xlink:title="TreasuryStockSharesAcquired" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="TreasuryStockSharesAcquired" xlink:title="definition: StatementLineItems to TreasuryStockSharesAcquired" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockRetiredCostMethodAmount" xlink:label="TreasuryStockRetiredCostMethodAmount" xlink:title="TreasuryStockRetiredCostMethodAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="TreasuryStockRetiredCostMethodAmount" xlink:title="definition: StatementLineItems to TreasuryStockRetiredCostMethodAmount" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesRetired" xlink:label="TreasuryStockSharesRetired" xlink:title="TreasuryStockSharesRetired" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="TreasuryStockSharesRetired" xlink:title="definition: StatementLineItems to TreasuryStockSharesRetired" order="12.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="StatementLineItems" xlink:to="StatementTable" xlink:title="definition: StatementLineItems to StatementTable" order="13.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="definition: StatementTable to StatementEquityComponentsAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain_2" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain_2" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="CommonStockMember" xlink:title="definition: EquityComponentDomain to CommonStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AdditionalPaidInCapitalMember" xlink:title="definition: EquityComponentDomain to AdditionalPaidInCapitalMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="RetainedEarningsMember" xlink:title="definition: EquityComponentDomain to RetainedEarningsMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="TreasuryStockCommonMember" xlink:title="definition: EquityComponentDomain to TreasuryStockCommonMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="definition: EquityComponentDomain to AccumulatedOtherComprehensiveIncomeMember" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="NoncontrollingInterestMember" xlink:title="NoncontrollingInterestMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="NoncontrollingInterestMember" xlink:title="definition: EquityComponentDomain to NoncontrollingInterestMember" order="6.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfCashFlows" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivable" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssets" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/Inventories" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNet" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVenture" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilities" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/Debt" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilities" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/Revenue" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/Leases" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/EmployeeRetirementPlans" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxes" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShare" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingencies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrations" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RelatedPartyTransactions" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurements" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchasePrograms" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/InsiderTradingArrangements" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVenturePolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenuePolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationOptionAndIncentivePlansPolicy" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EmployeeStockPurchasePlanPolicyTextBlock" xlink:label="EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="EmployeeStockPurchasePlanPolicyTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeStockPurchasePlanPolicyTextBlock" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="4.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="EmployeeStockOptionMember" xlink:title="EmployeeStockOptionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockOptionMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockOptionMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivableTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssetsTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/InventoriesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNetTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilitiesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilitiesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShareTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingenciesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrationsTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="ConcentrationRiskLineItems" xlink:title="ConcentrationRiskLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="definition: ConcentrationRiskLineItems to SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:label="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="LongLivedAssetsByGeographicAreasTableTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="definition: ConcentrationRiskLineItems to LongLivedAssetsByGeographicAreasTableTextBlock" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ConcentrationRiskLineItems" xlink:to="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="definition: ConcentrationRiskLineItems to ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="definition: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByBenchmarkAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain_2" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain_2" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableMember" xlink:label="AccountsReceivableMember" xlink:title="AccountsReceivableMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="AccountsReceivableMember" xlink:title="definition: ConcentrationRiskBenchmarkDomain to AccountsReceivableMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="definition: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchaseProgramsTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails">
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:label="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:title="ManufacturingFacilitiesByGeographicalRegionLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesAbstract" xlink:label="ManufacturingFacilitiesAbstract" xlink:title="ManufacturingFacilitiesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="ManufacturingFacilitiesAbstract" xlink:title="definition: ManufacturingFacilitiesByGeographicalRegionLineItems to ManufacturingFacilitiesAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfManufacturingFacilities" xlink:label="NumberOfManufacturingFacilities" xlink:title="NumberOfManufacturingFacilities" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="NumberOfManufacturingFacilities" xlink:title="definition: ManufacturingFacilitiesByGeographicalRegionLineItems to NumberOfManufacturingFacilities" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionTable" xlink:label="ManufacturingFacilitiesByGeographicalRegionTable" xlink:title="ManufacturingFacilitiesByGeographicalRegionTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="ManufacturingFacilitiesByGeographicalRegionTable" xlink:title="definition: ManufacturingFacilitiesByGeographicalRegionLineItems to ManufacturingFacilitiesByGeographicalRegionTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ManufacturingFacilitiesByGeographicalRegionTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: ManufacturingFacilitiesByGeographicalRegionTable to StatementGeographicalAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="definition: SegmentGeographicalDomain to TW" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="definition: SegmentGeographicalDomain to CN" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="definition: SegmentGeographicalDomain to KR" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_EuropeMember" xlink:label="EuropeMember" xlink:title="EuropeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeMember" xlink:title="definition: SegmentGeographicalDomain to EuropeMember" order="5.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:label="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="AvailableForSaleDebtSecuritiesAmortizedCostBasis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleDebtSecuritiesAmortizedCostBasis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="AvailableForSaleSecuritiesDebtSecurities" xlink:title="AvailableForSaleSecuritiesDebtSecurities" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleSecuritiesDebtSecurities" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleSecuritiesDebtSecurities" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:label="DebtSecuritiesAvailableForSaleTable" xlink:title="DebtSecuritiesAvailableForSaleTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="DebtSecuritiesAvailableForSaleTable" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to DebtSecuritiesAvailableForSaleTable" order="6.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="FinancialInstrumentAxis" xlink:title="FinancialInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FinancialInstrumentAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to FinancialInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="definition: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" xlink:title="definition: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_USTreasuryAndGovernmentMember" xlink:label="USTreasuryAndGovernmentMember" xlink:title="USTreasuryAndGovernmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="USTreasuryAndGovernmentMember" xlink:title="definition: TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain to USTreasuryAndGovernmentMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="CashAndCashEquivalentsAxis" xlink:title="CashAndCashEquivalentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="CashAndCashEquivalentsAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to CashAndCashEquivalentsAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="definition: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" xlink:title="definition: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BankTimeDepositsMember" xlink:label="BankTimeDepositsMember" xlink:title="BankTimeDepositsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="BankTimeDepositsMember" xlink:title="definition: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to BankTimeDepositsMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentAbstract" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentUsefulLife" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentUsefulLife" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="definition: PropertyPlantAndEquipmentLineItems to ScheduleOfPropertyPlantAndEquipmentTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="definition: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfPropertyPlantAndEquipmentTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRecognitionAbstract" xlink:label="RevenueRecognitionAbstract" xlink:title="RevenueRecognitionAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueRecognitionAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenueRecognitionAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerAssetAndLiabilityAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_BacklogOfOrdersAbstract" xlink:label="BacklogOfOrdersAbstract" xlink:title="BacklogOfOrdersAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="BacklogOfOrdersAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to BacklogOfOrdersAbstract" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductWarrantyAbstract" xlink:label="ProductWarrantyAbstract" xlink:title="ProductWarrantyAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ProductWarrantyAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to ProductWarrantyAbstract" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PeriodOfWarranty" xlink:label="PeriodOfWarranty" xlink:title="PeriodOfWarranty" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="PeriodOfWarranty" xlink:title="definition: DisaggregationOfRevenueLineItems to PeriodOfWarranty" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExpectedTimingOfSatisfactionPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="definition: DisaggregationOfRevenueLineItems to CustomerOrdersExpectedTimingOfSatisfactionPeriod" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExtendedTimingOfSatisfactionPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="definition: DisaggregationOfRevenueLineItems to CustomerOrdersExtendedTimingOfSatisfactionPeriod" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostImpairmentLoss" xlink:label="CapitalizedContractCostImpairmentLoss" xlink:title="CapitalizedContractCostImpairmentLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="CapitalizedContractCostImpairmentLoss" xlink:title="definition: DisaggregationOfRevenueLineItems to CapitalizedContractCostImpairmentLoss" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="AllowanceForDoubtfulAccountsReceivableWriteOffs" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="definition: DisaggregationOfRevenueLineItems to AllowanceForDoubtfulAccountsReceivableWriteOffs" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueTable" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueTable" order="10.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="definition: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain_2" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain_2" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IntegratedCircuitsMember" xlink:label="IntegratedCircuitsMember" xlink:title="IntegratedCircuitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="IntegratedCircuitsMember" xlink:title="definition: ProductsAndServicesDomain to IntegratedCircuitsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FlatPanelDisplaysMember" xlink:label="FlatPanelDisplaysMember" xlink:title="FlatPanelDisplaysMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="FlatPanelDisplaysMember" xlink:title="definition: ProductsAndServicesDomain to FlatPanelDisplaysMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="definition: DisaggregationOfRevenueTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityAbstract" xlink:label="VariableInterestEntityAbstract" xlink:title="VariableInterestEntityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityAbstract" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityOwnershipPercentage" xlink:label="VariableInterestEntityOwnershipPercentage" xlink:title="VariableInterestEntityOwnershipPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityOwnershipPercentage" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityOwnershipPercentage" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="VariableInterestEntityLineItems" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="definition: VariableInterestEntityLineItems to ScheduleOfVariableInterestEntitiesTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfVariableInterestEntitiesTable to RangeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="definition: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain_2" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain_2" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PhotronicsAndDNPMember" xlink:label="PhotronicsAndDNPMember" xlink:title="PhotronicsAndDNPMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PhotronicsAndDNPMember" xlink:title="definition: ConsolidatedEntitiesDomain to PhotronicsAndDNPMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivableDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssetsDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/InventoriesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xlink:label="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="PropertyPlantAndEquipmentNetByTypeAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentNetByTypeAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:label="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="definition: PropertyPlantAndEquipmentLineItems to FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="definition: PropertyPlantAndEquipmentLineItems to CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="definition: PropertyPlantAndEquipmentLineItems to CostOfGoodsAndServicesSoldDepreciationAndAmortization" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="definition: PropertyPlantAndEquipmentLineItems to FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetAccumulatedAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="definition: PropertyPlantAndEquipmentLineItems to FinanceLeaseRightOfUseAssetAccumulatedAmortization" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="FinanceLeaseRightOfUseAsset" xlink:title="FinanceLeaseRightOfUseAsset" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="FinanceLeaseRightOfUseAsset" xlink:title="definition: PropertyPlantAndEquipmentLineItems to FinanceLeaseRightOfUseAsset" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentGross" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentGross" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="definition: PropertyPlantAndEquipmentLineItems to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentNet" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="definition: PropertyPlantAndEquipmentLineItems to ScheduleOfPropertyPlantAndEquipmentTable" order="11.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="definition: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LandMember" xlink:label="LandMember" xlink:title="LandMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="LandMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to LandMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="LeaseholdImprovementsMember" xlink:title="LeaseholdImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="LeaseholdImprovementsMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to LeaseholdImprovementsMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConstructionInProgressMember" xlink:label="ConstructionInProgressMember" xlink:title="ConstructionInProgressMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="ConstructionInProgressMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to ConstructionInProgressMember" order="6.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureVieDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityAbstract" xlink:label="VariableInterestEntityAbstract" xlink:title="VariableInterestEntityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityAbstract" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityOwnershipPercentage" xlink:label="VariableInterestEntityOwnershipPercentage" xlink:title="VariableInterestEntityOwnershipPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityOwnershipPercentage" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityOwnershipPercentage" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="definition: VariableInterestEntityLineItems to LongTermDebtAndCapitalLeaseObligations" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:label="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="definition: VariableInterestEntityLineItems to NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:label="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="definition: VariableInterestEntityLineItems to NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xlink:label="VariableInterestEntityMeasureOfActivityAbstract" xlink:title="VariableInterestEntityMeasureOfActivityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityMeasureOfActivityAbstract" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityMeasureOfActivityAbstract" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:label="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="VariableInterestEntityLineItems" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="definition: VariableInterestEntityLineItems to ScheduleOfVariableInterestEntitiesTable" order="8.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="definition: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain_2" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain_2" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PhotronicsAndDNPMember" xlink:label="PhotronicsAndDNPMember" xlink:title="PhotronicsAndDNPMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PhotronicsAndDNPMember" xlink:title="definition: ConsolidatedEntitiesDomain to PhotronicsAndDNPMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PDMCXMember" xlink:label="PDMCXMember" xlink:title="PDMCXMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PDMCXMember" xlink:title="definition: ConsolidatedEntitiesDomain to PDMCXMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="definition: ConsolidatedEntitiesDomain to VariableInterestEntityPrimaryBeneficiaryMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityNotPrimaryBeneficiaryMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="definition: ConsolidatedEntitiesDomain to VariableInterestEntityNotPrimaryBeneficiaryMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfVariableInterestEntitiesTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:label="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="definition: VariableInterestEntityLineItems to VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="AssetsCurrent" xlink:title="definition: VariableInterestEntityLineItems to AssetsCurrent" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="AssetsNoncurrent" xlink:title="definition: VariableInterestEntityLineItems to AssetsNoncurrent" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="Assets" xlink:title="definition: VariableInterestEntityLineItems to Assets" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="LiabilitiesCurrent" xlink:title="definition: VariableInterestEntityLineItems to LiabilitiesCurrent" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="LiabilitiesNoncurrent" xlink:title="definition: VariableInterestEntityLineItems to LiabilitiesNoncurrent" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="Liabilities" xlink:title="definition: VariableInterestEntityLineItems to Liabilities" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableInterestEntityLineItems" xlink:to="AssetsNet" xlink:title="definition: VariableInterestEntityLineItems to AssetsNet" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="VariableInterestEntityLineItems" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="definition: VariableInterestEntityLineItems to ScheduleOfVariableInterestEntitiesTable" order="9.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="definition: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain_2" xlink:title="ConsolidatedEntitiesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain_2" xlink:title="definition: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PDMCXMember" xlink:label="PDMCXMember" xlink:title="PDMCXMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PDMCXMember" xlink:title="definition: ConsolidatedEntitiesDomain to PDMCXMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="definition: ConsolidatedEntitiesDomain to VariableInterestEntityPrimaryBeneficiaryMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilitiesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LongTermDebtMaturingInYearOneAbstract" xlink:label="LongTermDebtMaturingInYearOneAbstract" xlink:title="LongTermDebtMaturingInYearOneAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturingInYearOneAbstract" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturingInYearOneAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="LongTermDebtByMaturityAbstract" xlink:title="LongTermDebtByMaturityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtByMaturityAbstract" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtByMaturityAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="DebtInstrumentPaymentTerms" xlink:title="DebtInstrumentPaymentTerms" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentPaymentTerms" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentPaymentTerms" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentFrequencyOfPeriodicPayment" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCollateralAmount" xlink:label="DebtInstrumentCollateralAmount" xlink:title="DebtInstrumentCollateralAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentCollateralAmount" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentCollateralAmount" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtAndCapitalLeaseObligations" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="definition: DebtInstrumentLineItems to DebtLongtermAndShorttermCombinedAmount" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="definition: DebtInstrumentLineItems to LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" order="12.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="13.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseMember" xlink:label="FinanceLeaseMember" xlink:title="FinanceLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="FinanceLeaseMember" xlink:title="definition: DebtInstrumentNameDomain to FinanceLeaseMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtFinanceLeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseTermOfContract1" xlink:label="LesseeFinanceLeaseTermOfContract1" xlink:title="LesseeFinanceLeaseTermOfContract1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LesseeFinanceLeaseTermOfContract1" xlink:title="definition: DebtInstrumentLineItems to LesseeFinanceLeaseTermOfContract1" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="FinanceLeaseLiability" xlink:title="definition: DebtInstrumentLineItems to FinanceLeaseLiability" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="DebtInstrumentPeriodicPayment" xlink:title="DebtInstrumentPeriodicPayment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentPeriodicPayment" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentPeriodicPayment" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OutstandingCommittedBalanceForCrossDefaultProvision" xlink:label="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="OutstandingCommittedBalanceForCrossDefaultProvision" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="definition: DebtInstrumentLineItems to OutstandingCommittedBalanceForCrossDefaultProvision" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="7.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseMember" xlink:label="FinanceLeaseMember" xlink:title="FinanceLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="FinanceLeaseMember" xlink:title="definition: DebtInstrumentNameDomain to FinanceLeaseMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Seven2MillionFinanceLeaseMember" xlink:label="Seven2MillionFinanceLeaseMember" xlink:title="Seven2MillionFinanceLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FinanceLeaseMember" xlink:to="Seven2MillionFinanceLeaseMember" xlink:title="definition: FinanceLeaseMember to Seven2MillionFinanceLeaseMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Three55MillionFinanceLeaseMember" xlink:label="Three55MillionFinanceLeaseMember" xlink:title="Three55MillionFinanceLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FinanceLeaseMember" xlink:to="Three55MillionFinanceLeaseMember" xlink:title="definition: FinanceLeaseMember to Three55MillionFinanceLeaseMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="RangeAxis" xlink:title="definition: DebtInstrumentTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="LeaseContractualTermAxis" xlink:title="LeaseContractualTermAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="LeaseContractualTermAxis" xlink:title="definition: DebtInstrumentTable to LeaseContractualTermAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="LeaseContractualTermDomain" xlink:title="LeaseContractualTermDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="LeaseContractualTermAxis" xlink:to="LeaseContractualTermDomain" xlink:title="definition: LeaseContractualTermAxis to LeaseContractualTermDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="LeaseContractualTermDomain_2" xlink:title="LeaseContractualTermDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="LeaseContractualTermAxis" xlink:to="LeaseContractualTermDomain_2" xlink:title="definition: LeaseContractualTermAxis to LeaseContractualTermDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MonthlyMember" xlink:label="MonthlyMember" xlink:title="MonthlyMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LeaseContractualTermDomain" xlink:to="MonthlyMember" xlink:title="definition: LeaseContractualTermDomain to MonthlyMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FirstThreeMonthsMember" xlink:label="FirstThreeMonthsMember" xlink:title="FirstThreeMonthsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LeaseContractualTermDomain" xlink:to="FirstThreeMonthsMember" xlink:title="definition: LeaseContractualTermDomain to FirstThreeMonthsMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowingNineMonthsMember" xlink:label="FollowingNineMonthsMember" xlink:title="FollowingNineMonthsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LeaseContractualTermDomain" xlink:to="FollowingNineMonthsMember" xlink:title="definition: LeaseContractualTermDomain to FollowingNineMonthsMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowedByThirtySixMonthsMember" xlink:label="FollowedByThirtySixMonthsMember" xlink:title="FollowedByThirtySixMonthsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LeaseContractualTermDomain" xlink:to="FollowedByThirtySixMonthsMember" xlink:title="definition: LeaseContractualTermDomain to FollowedByThirtySixMonthsMember" order="4.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtXiamenProjectLoansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoansAbstract" xlink:label="ProjectLoansAbstract" xlink:title="ProjectLoansAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="ProjectLoansAbstract" xlink:title="definition: DebtInstrumentLineItems to ProjectLoansAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="RepaymentsOfLongTermDebt" xlink:title="RepaymentsOfLongTermDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="RepaymentsOfLongTermDebt" xlink:title="definition: DebtInstrumentLineItems to RepaymentsOfLongTermDebt" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="definition: DebtInstrumentLineItems to DebtLongtermAndShorttermCombinedAmount" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="5.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoanMember" xlink:label="ProjectLoanMember" xlink:title="ProjectLoanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="ProjectLoanMember" xlink:title="definition: DebtInstrumentNameDomain to ProjectLoanMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="LineOfCreditFacilityExpirationDate1" xlink:title="LineOfCreditFacilityExpirationDate1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityExpirationDate1" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityExpirationDate1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="RepaymentsOfLongTermDebt" xlink:title="RepaymentsOfLongTermDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="RepaymentsOfLongTermDebt" xlink:title="definition: DebtInstrumentLineItems to RepaymentsOfLongTermDebt" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="definition: DebtInstrumentLineItems to DebtLongtermAndShorttermCombinedAmount" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="6.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_WorkingCapitalLoanMember" xlink:label="WorkingCapitalLoanMember" xlink:title="WorkingCapitalLoanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="WorkingCapitalLoanMember" xlink:title="definition: DebtInstrumentNameDomain to WorkingCapitalLoanMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtCorporateCreditAgreementDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTerm" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTerm" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:label="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="LineOfCreditFacilityCurrentBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityCurrentBorrowingCapacity" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:label="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="definition: DebtInstrumentLineItems to AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="definition: DebtInstrumentLineItems to DebtLongtermAndShorttermCombinedAmount" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="7.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AmendedAndRestatedCreditAgreementMember" xlink:label="AmendedAndRestatedCreditAgreementMember" xlink:title="AmendedAndRestatedCreditAgreementMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="AmendedAndRestatedCreditAgreementMember" xlink:title="definition: DebtInstrumentNameDomain to AmendedAndRestatedCreditAgreementMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtInterestPaidForDebtDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilitiesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueDisaggregationOfRevenueDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenueFromContractWithCustomerExcludingAssessedTax" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueTable" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="TimingOfTransferOfGoodOrServiceAxis" xlink:title="TimingOfTransferOfGoodOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="TimingOfTransferOfGoodOrServiceAxis" xlink:title="definition: DisaggregationOfRevenueTable to TimingOfTransferOfGoodOrServiceAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="TimingOfTransferOfGoodOrServiceDomain" xlink:title="TimingOfTransferOfGoodOrServiceDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="TimingOfTransferOfGoodOrServiceAxis" xlink:to="TimingOfTransferOfGoodOrServiceDomain" xlink:title="definition: TimingOfTransferOfGoodOrServiceAxis to TimingOfTransferOfGoodOrServiceDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="TimingOfTransferOfGoodOrServiceDomain_2" xlink:title="TimingOfTransferOfGoodOrServiceDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="TimingOfTransferOfGoodOrServiceAxis" xlink:to="TimingOfTransferOfGoodOrServiceDomain_2" xlink:title="definition: TimingOfTransferOfGoodOrServiceAxis to TimingOfTransferOfGoodOrServiceDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredOverTimeMember" xlink:label="TransferredOverTimeMember" xlink:title="TransferredOverTimeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TimingOfTransferOfGoodOrServiceDomain" xlink:to="TransferredOverTimeMember" xlink:title="definition: TimingOfTransferOfGoodOrServiceDomain to TransferredOverTimeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="TransferredAtPointInTimeMember" xlink:title="TransferredAtPointInTimeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TimingOfTransferOfGoodOrServiceDomain" xlink:to="TransferredAtPointInTimeMember" xlink:title="definition: TimingOfTransferOfGoodOrServiceDomain to TransferredAtPointInTimeMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="definition: SegmentGeographicalDomain to TW" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="definition: SegmentGeographicalDomain to CN" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="definition: SegmentGeographicalDomain to KR" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_EuropeMember" xlink:label="EuropeMember" xlink:title="EuropeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeMember" xlink:title="definition: SegmentGeographicalDomain to EuropeMember" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherMember" xlink:label="OtherMember" xlink:title="OtherMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="OtherMember" xlink:title="definition: SegmentGeographicalDomain to OtherMember" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="definition: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain_2" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain_2" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IntegratedCircuitsMember" xlink:label="IntegratedCircuitsMember" xlink:title="IntegratedCircuitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="IntegratedCircuitsMember" xlink:title="definition: ProductsAndServicesDomain to IntegratedCircuitsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FlatPanelDisplaysMember" xlink:label="FlatPanelDisplaysMember" xlink:title="FlatPanelDisplaysMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="FlatPanelDisplaysMember" xlink:title="definition: ProductsAndServicesDomain to FlatPanelDisplaysMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndFlatPanelDisplaysMember" xlink:label="HighEndFlatPanelDisplaysMember" xlink:title="HighEndFlatPanelDisplaysMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FlatPanelDisplaysMember" xlink:to="HighEndFlatPanelDisplaysMember" xlink:title="definition: FlatPanelDisplaysMember to HighEndFlatPanelDisplaysMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamFlatPanelDisplaysMember" xlink:label="MainstreamFlatPanelDisplaysMember" xlink:title="MainstreamFlatPanelDisplaysMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FlatPanelDisplaysMember" xlink:to="MainstreamFlatPanelDisplaysMember" xlink:title="definition: FlatPanelDisplaysMember to MainstreamFlatPanelDisplaysMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndIntegratedCircuitsMember" xlink:label="HighEndIntegratedCircuitsMember" xlink:title="HighEndIntegratedCircuitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IntegratedCircuitsMember" xlink:to="HighEndIntegratedCircuitsMember" xlink:title="definition: IntegratedCircuitsMember to HighEndIntegratedCircuitsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamIntegratedCircuitsMember" xlink:label="MainstreamIntegratedCircuitsMember" xlink:title="MainstreamIntegratedCircuitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IntegratedCircuitsMember" xlink:to="MainstreamIntegratedCircuitsMember" xlink:title="definition: IntegratedCircuitsMember to MainstreamIntegratedCircuitsMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerAssetAndLiabilityAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xlink:label="ChangeInContractWithCustomerLiabilityAbstract" xlink:title="ChangeInContractWithCustomerLiabilityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ChangeInContractWithCustomerLiabilityAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to ChangeInContractWithCustomerLiabilityAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenuePerformanceObligationAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenuePerformanceObligationAbstract" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductInvoiceTerm" xlink:label="ProductInvoiceTerm" xlink:title="ProductInvoiceTerm" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ProductInvoiceTerm" xlink:title="definition: DisaggregationOfRevenueLineItems to ProductInvoiceTerm" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerLiabilityRevenueRecognized" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="ContractWithCustomerAssetNet" xlink:title="ContractWithCustomerAssetNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerAssetNet" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerAssetNet" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerLiability" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerLiability" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueTable" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueTable" order="8.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="definition: DisaggregationOfRevenueTable to RangeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="BalanceSheetLocationAxis" xlink:title="definition: DisaggregationOfRevenueTable to BalanceSheetLocationAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain" xlink:title="definition: BalanceSheetLocationAxis to BalanceSheetLocationDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain_2" xlink:title="BalanceSheetLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain_2" xlink:title="definition: BalanceSheetLocationAxis to BalanceSheetLocationDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="OtherCurrentAssetsMember" xlink:title="OtherCurrentAssetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="BalanceSheetLocationDomain" xlink:to="OtherCurrentAssetsMember" xlink:title="definition: BalanceSheetLocationDomain to OtherCurrentAssetsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="AccruedLiabilitiesMember" xlink:title="AccruedLiabilitiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="BalanceSheetLocationDomain" xlink:to="AccruedLiabilitiesMember" xlink:title="definition: BalanceSheetLocationDomain to AccruedLiabilitiesMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesMember" xlink:label="OtherLiabilitiesMember" xlink:title="OtherLiabilitiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="BalanceSheetLocationDomain" xlink:to="OtherLiabilitiesMember" xlink:title="definition: BalanceSheetLocationDomain to OtherLiabilitiesMember" order="3.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesLeaseCostDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:label="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedArrangementsToObtainGoodsAndServicesAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfExecutivesDeparted" xlink:label="NumberOfExecutivesDeparted" xlink:title="NumberOfExecutivesDeparted" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="NumberOfExecutivesDeparted" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to NumberOfExecutivesDeparted" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="AllocatedShareBasedCompensationExpense" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to AllocatedShareBasedCompensationExpense" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:label="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockOptionsActivityAbstract" xlink:label="StockOptionsActivityAbstract" xlink:title="StockOptionsActivityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="StockOptionsActivityAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to StockOptionsActivityAbstract" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" order="12.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" order="13.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="14.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="ProceedsFromStockOptionsExercised" xlink:title="ProceedsFromStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ProceedsFromStockOptionsExercised" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ProceedsFromStockOptionsExercised" order="15.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" order="16.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" order="17.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" order="18.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" order="19.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" order="20.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="21.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" order="22.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="23.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="24.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="25.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="26.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="27.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="28.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="29.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" order="30.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="31.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="32.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="33.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to StockIssuedDuringPeriodSharesStockOptionsExercised" order="34.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" order="35.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="36.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="37.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" order="38.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" order="39.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" order="40.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" order="41.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" order="42.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" order="43.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="44.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="45.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="46.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" order="47.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" order="48.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" order="49.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="50.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="51.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" order="52.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" order="53.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" order="54.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="55.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="EmployeeStockOptionMember" xlink:title="EmployeeStockOptionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockOptionMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockOptionMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="EmployeeStockMember" xlink:title="EmployeeStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="IncomeStatementLocationAxis" xlink:title="IncomeStatementLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="IncomeStatementLocationAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to IncomeStatementLocationAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="IncomeStatementLocationDomain" xlink:title="IncomeStatementLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="IncomeStatementLocationAxis" xlink:to="IncomeStatementLocationDomain" xlink:title="definition: IncomeStatementLocationAxis to IncomeStatementLocationDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="IncomeStatementLocationDomain_2" xlink:title="IncomeStatementLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="IncomeStatementLocationAxis" xlink:to="IncomeStatementLocationDomain_2" xlink:title="definition: IncomeStatementLocationAxis to IncomeStatementLocationDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="CostOfSalesMember" xlink:title="CostOfSalesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeStatementLocationDomain" xlink:to="CostOfSalesMember" xlink:title="definition: IncomeStatementLocationDomain to CostOfSalesMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="SellingGeneralAndAdministrativeExpensesMember" xlink:title="SellingGeneralAndAdministrativeExpensesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeStatementLocationDomain" xlink:to="SellingGeneralAndAdministrativeExpensesMember" xlink:title="definition: IncomeStatementLocationDomain to SellingGeneralAndAdministrativeExpensesMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="ResearchAndDevelopmentExpenseMember" xlink:title="ResearchAndDevelopmentExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeStatementLocationDomain" xlink:to="ResearchAndDevelopmentExpenseMember" xlink:title="definition: IncomeStatementLocationDomain to ResearchAndDevelopmentExpenseMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="TitleOfIndividualAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to TitleOfIndividualAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ExecutiveOfficerMember" xlink:label="ExecutiveOfficerMember" xlink:title="ExecutiveOfficerMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ExecutiveOfficerMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to ExecutiveOfficerMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to RangeAxis" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/EmployeeRetirementPlansDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesDetailsCalc01" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="OperatingLossCarryforwardsLineItems" xlink:title="OperatingLossCarryforwardsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:label="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="definition: OperatingLossCarryforwardsLineItems to DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_TaxCreditCarryforwardAbstract" xlink:label="TaxCreditCarryforwardAbstract" xlink:title="TaxCreditCarryforwardAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="TaxCreditCarryforwardAbstract" xlink:title="definition: OperatingLossCarryforwardsLineItems to TaxCreditCarryforwardAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:label="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="definition: OperatingLossCarryforwardsLineItems to ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxUncertaintiesAbstract" xlink:label="IncomeTaxUncertaintiesAbstract" xlink:title="IncomeTaxUncertaintiesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="IncomeTaxUncertaintiesAbstract" xlink:title="definition: OperatingLossCarryforwardsLineItems to IncomeTaxUncertaintiesAbstract" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNetAbstract" xlink:label="IncomeTaxesPaidNetAbstract" xlink:title="IncomeTaxesPaidNetAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="IncomeTaxesPaidNetAbstract" xlink:title="definition: OperatingLossCarryforwardsLineItems to IncomeTaxesPaidNetAbstract" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="IncomeTaxesPaid" xlink:title="IncomeTaxesPaid" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="IncomeTaxesPaid" xlink:title="definition: OperatingLossCarryforwardsLineItems to IncomeTaxesPaid" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIncomeTaxRefunds" xlink:label="ProceedsFromIncomeTaxRefunds" xlink:title="ProceedsFromIncomeTaxRefunds" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="ProceedsFromIncomeTaxRefunds" xlink:title="definition: OperatingLossCarryforwardsLineItems to ProceedsFromIncomeTaxRefunds" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:label="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="definition: OperatingLossCarryforwardsLineItems to DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="UnrecognizedTaxBenefits" xlink:title="UnrecognizedTaxBenefits" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefits" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefits" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" order="12.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" order="13.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" order="14.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" order="15.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" order="16.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:label="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="definition: OperatingLossCarryforwardsLineItems to UnrecognizedTaxBenefitsIncludingInterestAndPenalties" order="17.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="TaxCreditCarryforwardAmount" xlink:title="TaxCreditCarryforwardAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="TaxCreditCarryforwardAmount" xlink:title="definition: OperatingLossCarryforwardsLineItems to TaxCreditCarryforwardAmount" order="18.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardExpirationDate" xlink:label="TaxCreditCarryforwardExpirationDate" xlink:title="TaxCreditCarryforwardExpirationDate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="TaxCreditCarryforwardExpirationDate" xlink:title="definition: OperatingLossCarryforwardsLineItems to TaxCreditCarryforwardExpirationDate" order="19.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="OperatingLossCarryforwards" xlink:title="OperatingLossCarryforwards" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="OperatingLossCarryforwards" xlink:title="definition: OperatingLossCarryforwardsLineItems to OperatingLossCarryforwards" order="20.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsExpirationDate" xlink:label="OperatingLossCarryforwardsExpirationDate" xlink:title="OperatingLossCarryforwardsExpirationDate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="OperatingLossCarryforwardsExpirationDate" xlink:title="definition: OperatingLossCarryforwardsLineItems to OperatingLossCarryforwardsExpirationDate" order="21.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="OperatingLossCarryforwardsTable" xlink:title="OperatingLossCarryforwardsTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="OperatingLossCarryforwardsTable" xlink:title="definition: OperatingLossCarryforwardsLineItems to OperatingLossCarryforwardsTable" order="22.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="IncomeTaxAuthorityAxis" xlink:title="IncomeTaxAuthorityAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="OperatingLossCarryforwardsTable" xlink:to="IncomeTaxAuthorityAxis" xlink:title="definition: OperatingLossCarryforwardsTable to IncomeTaxAuthorityAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="IncomeTaxAuthorityDomain" xlink:title="IncomeTaxAuthorityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="IncomeTaxAuthorityAxis" xlink:to="IncomeTaxAuthorityDomain" xlink:title="definition: IncomeTaxAuthorityAxis to IncomeTaxAuthorityDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="IncomeTaxAuthorityDomain_2" xlink:title="IncomeTaxAuthorityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="IncomeTaxAuthorityAxis" xlink:to="IncomeTaxAuthorityDomain_2" xlink:title="definition: IncomeTaxAuthorityAxis to IncomeTaxAuthorityDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DomesticCountryMember" xlink:label="DomesticCountryMember" xlink:title="DomesticCountryMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeTaxAuthorityDomain" xlink:to="DomesticCountryMember" xlink:title="definition: IncomeTaxAuthorityDomain to DomesticCountryMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="StateAndLocalJurisdictionMember" xlink:title="StateAndLocalJurisdictionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeTaxAuthorityDomain" xlink:to="StateAndLocalJurisdictionMember" xlink:title="definition: IncomeTaxAuthorityDomain to StateAndLocalJurisdictionMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCountryMember" xlink:label="ForeignCountryMember" xlink:title="ForeignCountryMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="IncomeTaxAuthorityDomain" xlink:to="ForeignCountryMember" xlink:title="definition: IncomeTaxAuthorityDomain to ForeignCountryMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="TaxCreditCarryforwardAxis" xlink:title="TaxCreditCarryforwardAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="OperatingLossCarryforwardsTable" xlink:to="TaxCreditCarryforwardAxis" xlink:title="definition: OperatingLossCarryforwardsTable to TaxCreditCarryforwardAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="TaxCreditCarryforwardNameDomain" xlink:title="TaxCreditCarryforwardNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="TaxCreditCarryforwardAxis" xlink:to="TaxCreditCarryforwardNameDomain" xlink:title="definition: TaxCreditCarryforwardAxis to TaxCreditCarryforwardNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="TaxCreditCarryforwardNameDomain_2" xlink:title="TaxCreditCarryforwardNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="TaxCreditCarryforwardAxis" xlink:to="TaxCreditCarryforwardNameDomain_2" xlink:title="definition: TaxCreditCarryforwardAxis to TaxCreditCarryforwardNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchMember" xlink:label="ResearchMember" xlink:title="ResearchMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="ResearchMember" xlink:title="definition: TaxCreditCarryforwardNameDomain to ResearchMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentCreditMember" xlink:label="InvestmentCreditMember" xlink:title="InvestmentCreditMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="InvestmentCreditMember" xlink:title="definition: TaxCreditCarryforwardNameDomain to InvestmentCreditMember" order="2.0" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="StateAndLocalJurisdictionMember" xlink:title="definition: TaxCreditCarryforwardNameDomain to StateAndLocalJurisdictionMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="OperatingLossCarryforwardsTable" xlink:to="RangeAxis" xlink:title="definition: OperatingLossCarryforwardsTable to RangeAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AntidilutiveSecuritiesAbstract" xlink:label="AntidilutiveSecuritiesAbstract" xlink:title="AntidilutiveSecuritiesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="AntidilutiveSecuritiesAbstract" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to AntidilutiveSecuritiesAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="definition: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain_2" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain_2" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="StockCompensationPlanMember" xlink:title="definition: AntidilutiveSecuritiesNameDomain to StockCompensationPlanMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingenciesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:title="AccumulatedOtherComprehensiveIncomeLossLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:label="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossLineItems to ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="StockholdersEquity" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossLineItems to StockholdersEquity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossLineItems to OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:label="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossLineItems to OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="AccumulatedOtherComprehensiveIncomeLossTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossLineItems to AccumulatedOtherComprehensiveIncomeLossTable" order="5.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="StatementEquityComponentsAxis" xlink:title="definition: AccumulatedOtherComprehensiveIncomeLossTable to StatementEquityComponentsAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain_2" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain_2" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="definition: EquityComponentDomain to AccumulatedOtherComprehensiveIncomeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AociIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="definition: EquityComponentDomain to AociIncludingPortionAttributableToNoncontrollingInterestMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociAttributableToNoncontrollingInterestMember" xlink:label="AociAttributableToNoncontrollingInterestMember" xlink:title="AociAttributableToNoncontrollingInterestMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AociAttributableToNoncontrollingInterestMember" xlink:title="definition: EquityComponentDomain to AociAttributableToNoncontrollingInterestMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AociAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="definition: AociAttributableToNoncontrollingInterestMember to AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AociAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="definition: AociAttributableToNoncontrollingInterestMember to AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="definition: AociIncludingPortionAttributableToNoncontrollingInterestMember to AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="definition: AociIncludingPortionAttributableToNoncontrollingInterestMember to AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="AccumulatedTranslationAdjustmentMember" xlink:title="AccumulatedTranslationAdjustmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="AccumulatedTranslationAdjustmentMember" xlink:title="definition: AccumulatedOtherComprehensiveIncomeMember to AccumulatedTranslationAdjustmentMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeOtherMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="definition: AccumulatedOtherComprehensiveIncomeMember to AccumulatedOtherComprehensiveIncomeOtherMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrationsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="ConcentrationRiskLineItems" xlink:title="ConcentrationRiskLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAccountedAbstract" xlink:label="CustomerAccountedAbstract" xlink:title="CustomerAccountedAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="CustomerAccountedAbstract" xlink:title="definition: ConcentrationRiskLineItems to CustomerAccountedAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:label="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="ConcentrationRisksTypesNoConcentrationPercentageAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="definition: ConcentrationRiskLineItems to ConcentrationRisksTypesNoConcentrationPercentageAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncurrentAssets" xlink:label="NoncurrentAssets" xlink:title="NoncurrentAssets" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="NoncurrentAssets" xlink:title="definition: ConcentrationRiskLineItems to NoncurrentAssets" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="AssetsNet" xlink:title="definition: ConcentrationRiskLineItems to AssetsNet" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskLineItems" xlink:to="ConcentrationRiskPercentage1" xlink:title="definition: ConcentrationRiskLineItems to ConcentrationRiskPercentage1" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ConcentrationRiskLineItems" xlink:to="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="definition: ConcentrationRiskLineItems to ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="6.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="definition: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByBenchmarkAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain_2" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain_2" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableMember" xlink:label="AccountsReceivableMember" xlink:title="AccountsReceivableMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="AccountsReceivableMember" xlink:title="definition: ConcentrationRiskBenchmarkDomain to AccountsReceivableMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="definition: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByTypeAxis" xlink:title="definition: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByTypeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain" xlink:title="definition: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain_2" xlink:title="ConcentrationRiskTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain_2" xlink:title="definition: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="CustomerConcentrationRiskMember" xlink:title="CustomerConcentrationRiskMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskTypeDomain" xlink:to="CustomerConcentrationRiskMember" xlink:title="definition: ConcentrationRiskTypeDomain to CustomerConcentrationRiskMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="MajorCustomersAxis" xlink:title="MajorCustomersAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="MajorCustomersAxis" xlink:title="definition: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to MajorCustomersAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain" xlink:title="NameOfMajorCustomerDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain" xlink:title="definition: MajorCustomersAxis to NameOfMajorCustomerDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain_2" xlink:title="NameOfMajorCustomerDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain_2" xlink:title="definition: MajorCustomersAxis to NameOfMajorCustomerDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAMember" xlink:label="CustomerAMember" xlink:title="CustomerAMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerAMember" xlink:title="definition: NameOfMajorCustomerDomain to CustomerAMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerBMember" xlink:label="CustomerBMember" xlink:title="CustomerBMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerBMember" xlink:title="definition: NameOfMajorCustomerDomain to CustomerBMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerCMember" xlink:label="CustomerCMember" xlink:title="CustomerCMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerCMember" xlink:title="definition: NameOfMajorCustomerDomain to CustomerCMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to StatementGeographicalAxis" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="definition: SegmentGeographicalDomain to CN" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EuropeAndOtherMember" xlink:label="EuropeAndOtherMember" xlink:title="EuropeAndOtherMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeAndOtherMember" xlink:title="definition: SegmentGeographicalDomain to EuropeAndOtherMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="definition: SegmentGeographicalDomain to KR" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="definition: SegmentGeographicalDomain to TW" order="5.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/RelatedPartyTransactionsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="RelatedPartyTransactionLineItems" xlink:title="RelatedPartyTransactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_RelatedPartyAgreementAbstract" xlink:label="RelatedPartyAgreementAbstract" xlink:title="RelatedPartyAgreementAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RelatedPartyTransactionLineItems" xlink:to="RelatedPartyAgreementAbstract" xlink:title="definition: RelatedPartyTransactionLineItems to RelatedPartyAgreementAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RelatedPartyTransactionLineItems" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="definition: RelatedPartyTransactionLineItems to RevenueFromContractWithCustomerExcludingAssessedTax" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RelatedPartyTransactionLineItems" xlink:to="AccountsReceivableNetCurrent" xlink:title="definition: RelatedPartyTransactionLineItems to AccountsReceivableNetCurrent" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="RelatedPartyTransactionLineItems" xlink:to="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="definition: RelatedPartyTransactionLineItems to ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" order="4.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="MajorCustomersAxis" xlink:title="MajorCustomersAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="MajorCustomersAxis" xlink:title="definition: ScheduleOfRelatedPartyTransactionsByRelatedPartyTable to MajorCustomersAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain" xlink:title="NameOfMajorCustomerDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain" xlink:title="definition: MajorCustomersAxis to NameOfMajorCustomerDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain_2" xlink:title="NameOfMajorCustomerDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain_2" xlink:title="definition: MajorCustomersAxis to NameOfMajorCustomerDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MajorCustomer1Member" xlink:label="MajorCustomer1Member" xlink:title="MajorCustomer1Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="NameOfMajorCustomerDomain" xlink:to="MajorCustomer1Member" xlink:title="definition: NameOfMajorCustomerDomain to MajorCustomer1Member" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="AssetsFairValueDisclosureAbstract" xlink:title="AssetsFairValueDisclosureAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AssetsFairValueDisclosureAbstract" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AssetsFairValueDisclosureAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="AssetsFairValueDisclosure" xlink:title="AssetsFairValueDisclosure" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AssetsFairValueDisclosure" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to AssetsFairValueDisclosure" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:label="DebtSecuritiesAvailableForSaleTable" xlink:title="DebtSecuritiesAvailableForSaleTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="DebtSecuritiesAvailableForSaleTable" xlink:title="definition: ScheduleOfAvailableForSaleSecuritiesLineItems to DebtSecuritiesAvailableForSaleTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="FairValueByMeasurementFrequencyAxis" xlink:title="FairValueByMeasurementFrequencyAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FairValueByMeasurementFrequencyAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to FairValueByMeasurementFrequencyAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="FairValueMeasurementFrequencyDomain" xlink:title="FairValueMeasurementFrequencyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="FairValueByMeasurementFrequencyAxis" xlink:to="FairValueMeasurementFrequencyDomain" xlink:title="definition: FairValueByMeasurementFrequencyAxis to FairValueMeasurementFrequencyDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="FairValueMeasurementFrequencyDomain_2" xlink:title="FairValueMeasurementFrequencyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="FairValueByMeasurementFrequencyAxis" xlink:to="FairValueMeasurementFrequencyDomain_2" xlink:title="definition: FairValueByMeasurementFrequencyAxis to FairValueMeasurementFrequencyDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="FairValueMeasurementsRecurringMember" xlink:title="FairValueMeasurementsRecurringMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FairValueMeasurementFrequencyDomain" xlink:to="FairValueMeasurementsRecurringMember" xlink:title="definition: FairValueMeasurementFrequencyDomain to FairValueMeasurementsRecurringMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="FairValueByFairValueHierarchyLevelAxis" xlink:title="FairValueByFairValueHierarchyLevelAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FairValueByFairValueHierarchyLevelAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to FairValueByFairValueHierarchyLevelAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="FairValueMeasurementsFairValueHierarchyDomain" xlink:title="FairValueMeasurementsFairValueHierarchyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="FairValueByFairValueHierarchyLevelAxis" xlink:to="FairValueMeasurementsFairValueHierarchyDomain" xlink:title="definition: FairValueByFairValueHierarchyLevelAxis to FairValueMeasurementsFairValueHierarchyDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="FairValueMeasurementsFairValueHierarchyDomain_2" xlink:title="FairValueMeasurementsFairValueHierarchyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="FairValueByFairValueHierarchyLevelAxis" xlink:to="FairValueMeasurementsFairValueHierarchyDomain_2" xlink:title="definition: FairValueByFairValueHierarchyLevelAxis to FairValueMeasurementsFairValueHierarchyDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="FairValueInputsLevel1Member" xlink:title="FairValueInputsLevel1Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel1Member" xlink:title="definition: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel1Member" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="FairValueInputsLevel2Member" xlink:title="FairValueInputsLevel2Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel2Member" xlink:title="definition: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel2Member" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="FairValueInputsLevel3Member" xlink:title="FairValueInputsLevel3Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel3Member" xlink:title="definition: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel3Member" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="FinancialInstrumentAxis" xlink:title="FinancialInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FinancialInstrumentAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to FinancialInstrumentAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="definition: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" xlink:title="definition: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_USTreasuryAndGovernmentMember" xlink:label="USTreasuryAndGovernmentMember" xlink:title="USTreasuryAndGovernmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="USTreasuryAndGovernmentMember" xlink:title="definition: TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain to USTreasuryAndGovernmentMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="CashAndCashEquivalentsAxis" xlink:title="CashAndCashEquivalentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="CashAndCashEquivalentsAxis" xlink:title="definition: DebtSecuritiesAvailableForSaleTable to CashAndCashEquivalentsAxis" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="definition: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" xlink:title="definition: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BankTimeDepositsMember" xlink:label="BankTimeDepositsMember" xlink:title="BankTimeDepositsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="BankTimeDepositsMember" xlink:title="definition: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to BankTimeDepositsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="MoneyMarketFundsMember" xlink:title="MoneyMarketFundsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="MoneyMarketFundsMember" xlink:title="definition: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to MoneyMarketFundsMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchaseProgramsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:label="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramAuthorizedAmount1" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramAuthorizedAmount1" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockRepurchaseProgramCommencementDate" xlink:label="StockRepurchaseProgramCommencementDate" xlink:title="StockRepurchaseProgramCommencementDate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramCommencementDate" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramCommencementDate" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramExpirationDate" xlink:label="StockRepurchaseProgramExpirationDate" xlink:title="StockRepurchaseProgramExpirationDate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramExpirationDate" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramExpirationDate" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesRetired" xlink:label="TreasuryStockSharesRetired" xlink:title="TreasuryStockSharesRetired" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockSharesRetired" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockSharesRetired" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="TreasuryStockValueAcquiredCostMethod" xlink:title="TreasuryStockValueAcquiredCostMethod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockValueAcquiredCostMethod" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockValueAcquiredCostMethod" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="TreasuryStockAcquiredAverageCostPerShare" xlink:title="TreasuryStockAcquiredAverageCostPerShare" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockAcquiredAverageCostPerShare" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockAcquiredAverageCostPerShare" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="TreasuryStockSharesAcquired" xlink:title="TreasuryStockSharesAcquired" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockSharesAcquired" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockSharesAcquired" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="ClassOfTreasuryStockTable" xlink:title="definition: EquityClassOfTreasuryStockLineItems to ClassOfTreasuryStockTable" order="10.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ClassOfTreasuryStockTable" xlink:to="ShareRepurchaseProgramAxis" xlink:title="definition: ClassOfTreasuryStockTable to ShareRepurchaseProgramAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain" xlink:title="definition: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain_2" xlink:title="ShareRepurchaseProgramDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain_2" xlink:title="definition: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_September2020AnnouncedProgramMember" xlink:label="September2020AnnouncedProgramMember" xlink:title="September2020AnnouncedProgramMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareRepurchaseProgramDomain" xlink:to="September2020AnnouncedProgramMember" xlink:title="definition: ShareRepurchaseProgramDomain to September2020AnnouncedProgramMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareRepurchaseProgramsMember" xlink:label="ShareRepurchaseProgramsMember" xlink:title="ShareRepurchaseProgramsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareRepurchaseProgramDomain" xlink:to="ShareRepurchaseProgramsMember" xlink:title="definition: ShareRepurchaseProgramDomain to ShareRepurchaseProgramsMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccruedLiabilitiesCurrent" xlink:title="definition: LiabilitiesCurrentAbstract to AccruedLiabilitiesCurrent" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AssetsAbstract" xlink:to="OtherAssetsNoncurrent" xlink:title="definition: AssetsAbstract to OtherAssetsNoncurrent" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="LongTermDebtAndCapitalLeaseObligationsCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="definition: LiabilitiesCurrentAbstract to LongTermDebtAndCapitalLeaseObligationsCurrent" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AssetsAbstract" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="definition: AssetsAbstract to PropertyPlantAndEquipmentNet" order="2.0" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>plab-20241031_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 24.12.1.5274 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_InsiderTradingArrLineItems" xlink:label="InsiderTradingArrLineItems" xlink:title="InsiderTradingArrLineItems" />
    <link:label xlink:type="resource" xlink:label="ecd_InsiderTradingArrLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="ecd_InsiderTradingArrLineItems" xml:lang="en-US" id="ecd_InsiderTradingArrLineItems">Insider Trading Arrangements [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InsiderTradingArrLineItems" xlink:to="ecd_InsiderTradingArrLineItems" xlink:title="label: InsiderTradingArrLineItems to ecd_InsiderTradingArrLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_Rule10b51ArrAdoptedFlag" xlink:label="Rule10b51ArrAdoptedFlag" xlink:title="Rule10b51ArrAdoptedFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_Rule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="ecd_Rule10b51ArrAdoptedFlag" xml:lang="en-US" id="ecd_Rule10b51ArrAdoptedFlag">Rule 10b5-1 Arrangement Adopted</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Rule10b51ArrAdoptedFlag" xlink:to="ecd_Rule10b51ArrAdoptedFlag" xlink:title="label: Rule10b51ArrAdoptedFlag to ecd_Rule10b51ArrAdoptedFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_Rule10b51ArrAdoptedFlag_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="ecd_Rule10b51ArrAdoptedFlag_lbl1" xml:lang="en-US" id="ecd_Rule10b51ArrAdoptedFlag_lbl1">Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Rule10b51ArrAdoptedFlag" xlink:to="ecd_Rule10b51ArrAdoptedFlag_lbl1" xlink:title="label: Rule10b51ArrAdoptedFlag to ecd_Rule10b51ArrAdoptedFlag_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_Rule10b51ArrTrmntdFlag" xlink:label="Rule10b51ArrTrmntdFlag" xlink:title="Rule10b51ArrTrmntdFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_Rule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="ecd_Rule10b51ArrTrmntdFlag" xml:lang="en-US" id="ecd_Rule10b51ArrTrmntdFlag">Rule 10b5-1 Arrangement Terminated</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Rule10b51ArrTrmntdFlag" xlink:to="ecd_Rule10b51ArrTrmntdFlag" xlink:title="label: Rule10b51ArrTrmntdFlag to ecd_Rule10b51ArrTrmntdFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_Rule10b51ArrTrmntdFlag_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="ecd_Rule10b51ArrTrmntdFlag_lbl1" xml:lang="en-US" id="ecd_Rule10b51ArrTrmntdFlag_lbl1">Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Rule10b51ArrTrmntdFlag" xlink:to="ecd_Rule10b51ArrTrmntdFlag_lbl1" xlink:title="label: Rule10b51ArrTrmntdFlag to ecd_Rule10b51ArrTrmntdFlag_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_NonRule10b51ArrAdoptedFlag" xlink:label="NonRule10b51ArrAdoptedFlag" xlink:title="NonRule10b51ArrAdoptedFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_NonRule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="ecd_NonRule10b51ArrAdoptedFlag" xml:lang="en-US" id="ecd_NonRule10b51ArrAdoptedFlag">Non-Rule 10b5-1 Arrangement Adopted</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonRule10b51ArrAdoptedFlag" xlink:to="ecd_NonRule10b51ArrAdoptedFlag" xlink:title="label: NonRule10b51ArrAdoptedFlag to ecd_NonRule10b51ArrAdoptedFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_NonRule10b51ArrAdoptedFlag_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="ecd_NonRule10b51ArrAdoptedFlag_lbl1" xml:lang="en-US" id="ecd_NonRule10b51ArrAdoptedFlag_lbl1">Non-Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonRule10b51ArrAdoptedFlag" xlink:to="ecd_NonRule10b51ArrAdoptedFlag_lbl1" xlink:title="label: NonRule10b51ArrAdoptedFlag to ecd_NonRule10b51ArrAdoptedFlag_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_NonRule10b51ArrTrmntdFlag" xlink:label="NonRule10b51ArrTrmntdFlag" xlink:title="NonRule10b51ArrTrmntdFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_NonRule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="ecd_NonRule10b51ArrTrmntdFlag" xml:lang="en-US" id="ecd_NonRule10b51ArrTrmntdFlag">Non-Rule 10b5-1 Arrangement Terminated</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonRule10b51ArrTrmntdFlag" xlink:to="ecd_NonRule10b51ArrTrmntdFlag" xlink:title="label: NonRule10b51ArrTrmntdFlag to ecd_NonRule10b51ArrTrmntdFlag" />
    <link:label xlink:type="resource" xlink:label="ecd_NonRule10b51ArrTrmntdFlag_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="ecd_NonRule10b51ArrTrmntdFlag_lbl1" xml:lang="en-US" id="ecd_NonRule10b51ArrTrmntdFlag_lbl1">Non-Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonRule10b51ArrTrmntdFlag" xlink:to="ecd_NonRule10b51ArrTrmntdFlag_lbl1" xlink:title="label: NonRule10b51ArrTrmntdFlag to ecd_NonRule10b51ArrTrmntdFlag_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrent">Accounts receivable, net of allowance of $1,126 in 2024 and $1,099 in 2023</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:title="label: AccountsReceivableNetCurrent to us-gaap_AccountsReceivableNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AccountsReceivableNetCurrent1" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrent1">Total</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent1" xlink:title="label: AccountsReceivableNetCurrent to us-gaap_AccountsReceivableNetCurrent1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableNetCurrent2" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrent2">Accounts receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent2" xlink:title="label: AccountsReceivableNetCurrent to us-gaap_AccountsReceivableNetCurrent2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">Accumulated other comprehensive loss</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossNetOfTax to us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract to us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">Accumulated depreciation and amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapital" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapital">Additional paid-in capital</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:title="label: AdditionalPaidInCapital to us-gaap_AdditionalPaidInCapital" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US" id="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">Accounts receivable, allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="label: AllowanceForDoubtfulAccountsReceivableCurrent to us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent1" xml:lang="en-US" id="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent1">Allowance for Credit Losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent1" xlink:title="label: AllowanceForDoubtfulAccountsReceivableCurrent to us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US" id="us-gaap_AmortizationOfIntangibleAssets">Amortization of intangible assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:title="label: AmortizationOfIntangibleAssets to us-gaap_AmortizationOfIntangibleAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AmortizationOfIntangibleAssets_lbl1" xml:lang="en-US" id="us-gaap_AmortizationOfIntangibleAssets_lbl1">Amortization of Intangible Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl1" xlink:title="label: AmortizationOfIntangibleAssets to us-gaap_AmortizationOfIntangibleAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedStockMember" xml:lang="en-US" id="us-gaap_RestrictedStockMember">Restricted Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember" xlink:title="label: RestrictedStockMember to us-gaap_RestrictedStockMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockCompensationPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockCompensationPlanMember" xml:lang="en-US" id="us-gaap_StockCompensationPlanMember">Share-based Payment Awards [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockCompensationPlanMember" xlink:to="us-gaap_StockCompensationPlanMember" xlink:title="label: StockCompensationPlanMember to us-gaap_StockCompensationPlanMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockCompensationPlanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockCompensationPlanMember_lbl1" xml:lang="en-US" id="us-gaap_StockCompensationPlanMember_lbl1">Share-Based Payment Arrangement [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockCompensationPlanMember" xlink:to="us-gaap_StockCompensationPlanMember_lbl1" xlink:title="label: StockCompensationPlanMember to us-gaap_StockCompensationPlanMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfFinancialPositionAbstract" xml:lang="en-US" id="us-gaap_StatementOfFinancialPositionAbstract">Condensed Consolidated Balance Sheets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract" xlink:title="label: StatementOfFinancialPositionAbstract to us-gaap_StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareBasic" xml:lang="en-US" id="us-gaap_EarningsPerShareBasic">Basic (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic" xlink:title="label: EarningsPerShareBasic to us-gaap_EarningsPerShareBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareBasic1" xml:lang="en-US" id="us-gaap_EarningsPerShareBasic1">Net Income attributable to Photronics shareholders - Basic (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic1" xlink:title="label: EarningsPerShareBasic to us-gaap_EarningsPerShareBasic1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAtCarryingValue">Cash and cash equivalents at end of year</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:title="label: CashAndCashEquivalentsAtCarryingValue to us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsAtCarryingValue1" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAtCarryingValue1">Cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue1" xlink:title="label: CashAndCashEquivalentsAtCarryingValue to us-gaap_CashAndCashEquivalentsAtCarryingValue1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="CashAndCashEquivalentsPolicyTextBlock" xlink:title="CashAndCashEquivalentsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsPolicyTextBlock">Cash and Cash Equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:title="label: CashAndCashEquivalentsPolicyTextBlock to us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl1">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl1" xlink:title="label: CashAndCashEquivalentsPolicyTextBlock to us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:label="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:title="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy">Restricted Cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:to="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:title="label: CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy to us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_lbl1" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_lbl1">Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:to="us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_lbl1" xlink:title="label: CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy to us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaid" xlink:label="InterestPaid" xlink:title="InterestPaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InterestPaid" xml:lang="en-US" id="us-gaap_InterestPaid">Interest payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestPaid" xlink:to="us-gaap_InterestPaid" xlink:title="label: InterestPaid to us-gaap_InterestPaid" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable">Accounts receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1">Increase (Decrease) in Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInInventories_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories_lbl1">Increase (Decrease) in Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">Changes in assets, liabilities, and other:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="label: IncreaseDecreaseInOperatingCapitalAbstract to us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl1">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl1" xlink:title="label: IncreaseDecreaseInOperatingCapitalAbstract to us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">COMMITMENTS AND CONTINGENCIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="label: CommitmentsAndContingenciesDisclosureTextBlock to us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xlink:title="label: CommitmentsAndContingenciesDisclosureTextBlock to us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesAuthorized" xml:lang="en-US" id="us-gaap_CommonStockSharesAuthorized">Common stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:title="label: CommonStockSharesAuthorized to us-gaap_CommonStockSharesAuthorized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesIssued" xml:lang="en-US" id="us-gaap_CommonStockSharesIssued">Common stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued" xlink:title="label: CommonStockSharesIssued to us-gaap_CommonStockSharesIssued" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesOutstanding" xml:lang="en-US" id="us-gaap_CommonStockSharesOutstanding">Common stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:title="label: CommonStockSharesOutstanding to us-gaap_CommonStockSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CommonStockValue" xml:lang="en-US" id="us-gaap_CommonStockValue">Common stock, $0.01 par value, 150,000 shares authorized, 61,949 shares issued and outstanding at October 31, 2024, and 61,310 shares issued and outstanding at October 31, 2023</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockValue" xlink:to="us-gaap_CommonStockValue" xlink:title="label: CommonStockValue to us-gaap_CommonStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockValue_lbl1" xml:lang="en-US" id="us-gaap_CommonStockValue_lbl1">Common Stock, Value, Issued</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl1" xlink:title="label: CommonStockValue to us-gaap_CommonStockValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US" id="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">Current [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="label: CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract to us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">Deferred [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="label: DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract to us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:label="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:title="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xml:lang="en-US" id="us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract">Classification [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:title="label: ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract to us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="IncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract">Income Tax Provision [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="label: IncomeTaxExpenseBenefitContinuingOperationsAbstract to us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ComprehensiveIncomeNetOfTax" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTax">Comprehensive income (loss) attributable to Photronics, Inc. shareholders</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" xlink:title="label: ComprehensiveIncomeNetOfTax to us-gaap_ComprehensiveIncomeNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTax_lbl1">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xlink:title="label: ComprehensiveIncomeNetOfTax to us-gaap_ComprehensiveIncomeNetOfTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="ConcentrationRiskDisclosureTextBlock" xlink:title="ConcentrationRiskDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_ConcentrationRiskDisclosureTextBlock" xml:lang="en-US" id="us-gaap_ConcentrationRiskDisclosureTextBlock">RISKS AND CONCENTRATIONS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:title="label: ConcentrationRiskDisclosureTextBlock to us-gaap_ConcentrationRiskDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl1">Concentration Risk Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl1" xlink:title="label: ConcentrationRiskDisclosureTextBlock to us-gaap_ConcentrationRiskDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US" id="us-gaap_ConcentrationRiskByTypeAxis">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:title="label: ConcentrationRiskByTypeAxis to us-gaap_ConcentrationRiskByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="ConcentrationRiskLineItems" xlink:title="ConcentrationRiskLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskLineItems" xml:lang="en-US" id="us-gaap_ConcentrationRiskLineItems">Concentration Risk [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskLineItems" xlink:title="label: ConcentrationRiskLineItems to us-gaap_ConcentrationRiskLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US" id="us-gaap_ConcentrationRiskTypeDomain">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:title="label: ConcentrationRiskTypeDomain to us-gaap_ConcentrationRiskTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationVariableInterestEntityPolicy" xlink:label="ConsolidationVariableInterestEntityPolicy" xlink:title="ConsolidationVariableInterestEntityPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConsolidationVariableInterestEntityPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ConsolidationVariableInterestEntityPolicy" xml:lang="en-US" id="us-gaap_ConsolidationVariableInterestEntityPolicy">Variable Interest Entities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationVariableInterestEntityPolicy" xlink:to="us-gaap_ConsolidationVariableInterestEntityPolicy" xlink:title="label: ConsolidationVariableInterestEntityPolicy to us-gaap_ConsolidationVariableInterestEntityPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConsolidationVariableInterestEntityPolicy_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConsolidationVariableInterestEntityPolicy_lbl1" xml:lang="en-US" id="us-gaap_ConsolidationVariableInterestEntityPolicy_lbl1">Consolidation, Variable Interest Entity, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationVariableInterestEntityPolicy" xlink:to="us-gaap_ConsolidationVariableInterestEntityPolicy_lbl1" xlink:title="label: ConsolidationVariableInterestEntityPolicy to us-gaap_ConsolidationVariableInterestEntityPolicy_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_CostOfGoodsAndServicesSold" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSold">Cost of goods sold</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:title="label: CostOfGoodsAndServicesSold to us-gaap_CostOfGoodsAndServicesSold" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfGoodsAndServicesSold_lbl1" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSold_lbl1">Cost of Goods and Services Sold</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl1" xlink:title="label: CostOfGoodsAndServicesSold to us-gaap_CostOfGoodsAndServicesSold_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization">Depreciation and amortization expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:to="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="label: CostOfGoodsAndServicesSoldDepreciationAndAmortization to us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract">Depreciation Expense [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="label: CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract to us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="CurrentFederalTaxExpenseBenefit" xlink:title="CurrentFederalTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CurrentFederalTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_CurrentFederalTaxExpenseBenefit">Federal</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:title="label: CurrentFederalTaxExpenseBenefit to us-gaap_CurrentFederalTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="CurrentForeignTaxExpenseBenefit" xlink:title="CurrentForeignTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CurrentForeignTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_CurrentForeignTaxExpenseBenefit">Foreign</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentForeignTaxExpenseBenefit" xlink:to="us-gaap_CurrentForeignTaxExpenseBenefit" xlink:title="label: CurrentForeignTaxExpenseBenefit to us-gaap_CurrentForeignTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="CurrentIncomeTaxExpenseBenefit" xlink:title="CurrentIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_CurrentIncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_CurrentIncomeTaxExpenseBenefit">Current income tax provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:title="label: CurrentIncomeTaxExpenseBenefit to us-gaap_CurrentIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl1">Current Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl1" xlink:title="label: CurrentIncomeTaxExpenseBenefit to us-gaap_CurrentIncomeTaxExpenseBenefit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesCurrent" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent">Total current liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrent1" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent1">Current liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent1" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US" id="us-gaap_LiabilitiesCurrentAbstract">Current liabilities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:title="label: LiabilitiesCurrentAbstract to us-gaap_LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="LongTermDebtAndCapitalLeaseObligationsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xml:lang="en-US" id="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent">Current portion of long-term debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="label: LongTermDebtAndCapitalLeaseObligationsCurrent to us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_lbl1">Long-Term Debt and Lease Obligation, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_lbl1" xlink:title="label: LongTermDebtAndCapitalLeaseObligationsCurrent to us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="CurrentStateAndLocalTaxExpenseBenefit" xlink:title="CurrentStateAndLocalTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_CurrentStateAndLocalTaxExpenseBenefit">State</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:title="label: CurrentStateAndLocalTaxExpenseBenefit to us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="CustomerConcentrationRiskMember" xlink:title="CustomerConcentrationRiskMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CustomerConcentrationRiskMember" xml:lang="en-US" id="us-gaap_CustomerConcentrationRiskMember">Customer Concentration Risk [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:title="label: CustomerConcentrationRiskMember to us-gaap_CustomerConcentrationRiskMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LongTermDebtAndCapitalLeaseObligations" xml:lang="en-US" id="us-gaap_LongTermDebtAndCapitalLeaseObligations">Long-term debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:title="label: LongTermDebtAndCapitalLeaseObligations to us-gaap_LongTermDebtAndCapitalLeaseObligations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LongTermDebtAndCapitalLeaseObligations1" xml:lang="en-US" id="us-gaap_LongTermDebtAndCapitalLeaseObligations1">Long-term debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations1" xlink:title="label: LongTermDebtAndCapitalLeaseObligations to us-gaap_LongTermDebtAndCapitalLeaseObligations1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtAndCapitalLeaseObligations_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtAndCapitalLeaseObligations_lbl2" xml:lang="en-US" id="us-gaap_LongTermDebtAndCapitalLeaseObligations_lbl2">Long-Term Debt and Lease Obligation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtAndCapitalLeaseObligations" xlink:to="us-gaap_LongTermDebtAndCapitalLeaseObligations_lbl2" xlink:title="label: LongTermDebtAndCapitalLeaseObligations to us-gaap_LongTermDebtAndCapitalLeaseObligations_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_DebtDisclosureTextBlock" xml:lang="en-US" id="us-gaap_DebtDisclosureTextBlock">DEBT</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock" xlink:title="label: DebtDisclosureTextBlock to us-gaap_DebtDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_DebtDisclosureTextBlock_lbl1">Debt Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl1" xlink:title="label: DebtDisclosureTextBlock to us-gaap_DebtDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xml:lang="en-US" id="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment">Periodic payment frequency</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFrequencyOfPeriodicPayment" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="label: DebtInstrumentFrequencyOfPeriodicPayment to us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentNameDomain" xml:lang="en-US" id="us-gaap_DebtInstrumentNameDomain">Debt Instrument, Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentNameDomain" xlink:to="us-gaap_DebtInstrumentNameDomain" xlink:title="label: DebtInstrumentNameDomain to us-gaap_DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="DebtInstrumentPaymentTerms" xlink:title="DebtInstrumentPaymentTerms" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentPaymentTerms" xml:lang="en-US" id="us-gaap_DebtInstrumentPaymentTerms">Periodic payment amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPaymentTerms" xlink:to="us-gaap_DebtInstrumentPaymentTerms" xlink:title="label: DebtInstrumentPaymentTerms to us-gaap_DebtInstrumentPaymentTerms" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPaymentTerms_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentPaymentTerms_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentPaymentTerms_lbl1">Debt Instrument, Payment Terms</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPaymentTerms" xlink:to="us-gaap_DebtInstrumentPaymentTerms_lbl1" xlink:title="label: DebtInstrumentPaymentTerms to us-gaap_DebtInstrumentPaymentTerms_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="DebtInstrumentPeriodicPayment" xlink:title="DebtInstrumentPeriodicPayment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentPeriodicPayment" xml:lang="en-US" id="us-gaap_DebtInstrumentPeriodicPayment">Finance lease monthly payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment" xlink:title="label: DebtInstrumentPeriodicPayment to us-gaap_DebtInstrumentPeriodicPayment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentPeriodicPayment_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentPeriodicPayment_lbl1">Debt Instrument, Periodic Payment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment_lbl1" xlink:title="label: DebtInstrumentPeriodicPayment to us-gaap_DebtInstrumentPeriodicPayment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentsAbstract" xml:lang="en-US" id="us-gaap_DebtInstrumentsAbstract">Debt Instruments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentsAbstract" xlink:to="us-gaap_DebtInstrumentsAbstract" xlink:title="label: DebtInstrumentsAbstract to us-gaap_DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentAxis" xml:lang="en-US" id="us-gaap_DebtInstrumentAxis">Debt Instrument [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis" xlink:title="label: DebtInstrumentAxis to us-gaap_DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentLineItems" xml:lang="en-US" id="us-gaap_DebtInstrumentLineItems">Debt Instrument [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentLineItems" xlink:title="label: DebtInstrumentLineItems to us-gaap_DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentTable" xml:lang="en-US" id="us-gaap_DebtInstrumentTable">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentTable" xlink:title="label: DebtInstrumentTable to us-gaap_DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xlink:label="PostemploymentBenefitsLiabilityNoncurrent" xlink:title="PostemploymentBenefitsLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xml:lang="en-US" id="us-gaap_PostemploymentBenefitsLiabilityNoncurrent">Post employment benefit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PostemploymentBenefitsLiabilityNoncurrent" xlink:to="us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xlink:title="label: PostemploymentBenefitsLiabilityNoncurrent to us-gaap_PostemploymentBenefitsLiabilityNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="DeferredFederalIncomeTaxExpenseBenefit" xlink:title="DeferredFederalIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_DeferredFederalIncomeTaxExpenseBenefit">Federal</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:title="label: DeferredFederalIncomeTaxExpenseBenefit to us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl1">Deferred Federal Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl1" xlink:title="label: DeferredFederalIncomeTaxExpenseBenefit to us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="DeferredForeignIncomeTaxExpenseBenefit" xlink:title="DeferredForeignIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_DeferredForeignIncomeTaxExpenseBenefit">Foreign</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredForeignIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:title="label: DeferredForeignIncomeTaxExpenseBenefit to us-gaap_DeferredForeignIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl1">Deferred Foreign Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredForeignIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl1" xlink:title="label: DeferredForeignIncomeTaxExpenseBenefit to us-gaap_DeferredForeignIncomeTaxExpenseBenefit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxExpenseBenefit">Deferred income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:title="label: DeferredIncomeTaxExpenseBenefit to us-gaap_DeferredIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_DeferredIncomeTaxExpenseBenefit1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxExpenseBenefit1">Deferred income tax provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit1" xlink:title="label: DeferredIncomeTaxExpenseBenefit to us-gaap_DeferredIncomeTaxExpenseBenefit1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="DeferredIncomeTaxLiabilities" xlink:title="DeferredIncomeTaxLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:title="us-gaap_DeferredIncomeTaxLiabilities" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxLiabilities">Deferred income taxes liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" xlink:title="label: DeferredIncomeTaxLiabilities to us-gaap_DeferredIncomeTaxLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxLiabilities_lbl1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxLiabilities_lbl1">Deferred Tax Liabilities, Gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl1" xlink:title="label: DeferredIncomeTaxLiabilities to us-gaap_DeferredIncomeTaxLiabilities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="DeferredStateAndLocalIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">State</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="label: DeferredStateAndLocalIncomeTaxExpenseBenefit to us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl1">Deferred State and Local Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl1" xlink:title="label: DeferredStateAndLocalIncomeTaxExpenseBenefit to us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="DeferredTaxAssetsGross" xlink:title="DeferredTaxAssetsGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_DeferredTaxAssetsGross" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsGross">Deferred tax assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross" xlink:title="label: DeferredTaxAssetsGross to us-gaap_DeferredTaxAssetsGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsGross_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsGross_lbl1">Deferred Tax Assets, Gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl1" xlink:title="label: DeferredTaxAssetsGross to us-gaap_DeferredTaxAssetsGross_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="DeferredTaxAssetsInProcessResearchAndDevelopment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment">Research intangibles</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:to="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="label: DeferredTaxAssetsInProcessResearchAndDevelopment to us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="DeferredTaxAssetsLiabilitiesNet" xlink:title="DeferredTaxAssetsLiabilitiesNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_DeferredTaxAssetsLiabilitiesNet" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsLiabilitiesNet">Net deferred income tax assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:title="label: DeferredTaxAssetsLiabilitiesNet to us-gaap_DeferredTaxAssetsLiabilitiesNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl1">Deferred Tax Assets, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl1" xlink:title="label: DeferredTaxAssetsLiabilitiesNet to us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="DeferredTaxAssetsNet" xlink:title="DeferredTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_DeferredTaxAssetsNet" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsNet">Deferred tax assets net of valuation allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsNet" xlink:title="label: DeferredTaxAssetsNet to us-gaap_DeferredTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsNet_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsNet_lbl1">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsNet_lbl1" xlink:title="label: DeferredTaxAssetsNet to us-gaap_DeferredTaxAssetsNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="DeferredTaxAssetsOperatingLossCarryforwards" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">Net operating losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="label: DeferredTaxAssetsOperatingLossCarryforwards to us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:label="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract">Operating Loss Carryforward [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="label: DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract to us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract_lbl1">Deferred Tax Assets, Operating Loss Carryforwards, Components [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract_lbl1" xlink:title="label: DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract to us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:label="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="DeferredTaxAssetsTaxCreditCarryforwardsOther" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther">Tax credit carryforwards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="label: DeferredTaxAssetsTaxCreditCarryforwardsOther to us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">Share-based compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="label: DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost to us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl1">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl1" xlink:title="label: DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost to us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:label="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves">Reserves not currently deductible</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="label: DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves to us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves_lbl1">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves_lbl1" xlink:title="label: DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves to us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="DeferredTaxAssetsValuationAllowance" xlink:title="DeferredTaxAssetsValuationAllowance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_DeferredTaxAssetsValuationAllowance" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsValuationAllowance">Valuation allowances</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:title="label: DeferredTaxAssetsValuationAllowance to us-gaap_DeferredTaxAssetsValuationAllowance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsValuationAllowance_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsValuationAllowance_lbl1">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl1" xlink:title="label: DeferredTaxAssetsValuationAllowance to us-gaap_DeferredTaxAssetsValuationAllowance_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="DeferredTaxLiabilitiesAbstract" xlink:title="DeferredTaxLiabilitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxLiabilitiesAbstract" xml:lang="en-US" id="us-gaap_DeferredTaxLiabilitiesAbstract">Deferred Income Tax Liabilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:title="label: DeferredTaxLiabilitiesAbstract to us-gaap_DeferredTaxLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="DeferredTaxLiabilitiesOther" xlink:title="DeferredTaxLiabilitiesOther" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesOther" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_DeferredTaxLiabilitiesOther" xml:lang="en-US" id="us-gaap_DeferredTaxLiabilitiesOther">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesOther" xlink:to="us-gaap_DeferredTaxLiabilitiesOther" xlink:title="label: DeferredTaxLiabilitiesOther to us-gaap_DeferredTaxLiabilitiesOther" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxLiabilitiesOther_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxLiabilitiesOther_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxLiabilitiesOther_lbl1">Deferred Tax Liabilities, Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesOther" xlink:to="us-gaap_DeferredTaxLiabilitiesOther_lbl1" xlink:title="label: DeferredTaxLiabilitiesOther to us-gaap_DeferredTaxLiabilitiesOther_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="DefinedContributionPlanCostRecognized" xlink:title="DefinedContributionPlanCostRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanCostRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DefinedContributionPlanCostRecognized" xml:lang="en-US" id="us-gaap_DefinedContributionPlanCostRecognized">Company's contribution to defined contribution retirement plans</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanCostRecognized" xlink:to="us-gaap_DefinedContributionPlanCostRecognized" xlink:title="label: DefinedContributionPlanCostRecognized to us-gaap_DefinedContributionPlanCostRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanCostRecognized_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DefinedContributionPlanCostRecognized_lbl1" xml:lang="en-US" id="us-gaap_DefinedContributionPlanCostRecognized_lbl1">Defined Contribution Plan, Cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanCostRecognized" xlink:to="us-gaap_DefinedContributionPlanCostRecognized_lbl1" xlink:title="label: DefinedContributionPlanCostRecognized to us-gaap_DefinedContributionPlanCostRecognized_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareDiluted" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted">Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareDiluted1" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted1">Net Income attributable to Photronics shareholders - Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted1" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareDiluted_lbl2" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted_lbl2">Earnings Per Share, Diluted</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl2" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="ConsolidationPolicyTextBlock" xlink:title="ConsolidationPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ConsolidationPolicyTextBlock" xml:lang="en-US" id="us-gaap_ConsolidationPolicyTextBlock">Principles of Consolidation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock" xlink:title="label: ConsolidationPolicyTextBlock to us-gaap_ConsolidationPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConsolidationPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ConsolidationPolicyTextBlock_lbl1">Consolidation, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock_lbl1" xlink:title="label: ConsolidationPolicyTextBlock to us-gaap_ConsolidationPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">United States</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">Foreign</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl1" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl1">Income (Loss) from Continuing Operations before Income Taxes, Foreign</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl1" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US" id="us-gaap_EffectiveIncomeTaxRateContinuingOperations">Photronics effective tax rates</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:title="label: EffectiveIncomeTaxRateContinuingOperations to us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:title="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xml:lang="en-US" id="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">U.S. statutory tax rates</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:title="label: EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate to us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllocatedShareBasedCompensationExpense" xml:lang="en-US" id="us-gaap_AllocatedShareBasedCompensationExpense">Expense incurred</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:title="label: AllocatedShareBasedCompensationExpense to us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="EmployeeStockMember" xlink:title="EmployeeStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeStockMember" xml:lang="en-US" id="us-gaap_EmployeeStockMember">Employee Stock Purchase Plan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockMember" xlink:to="us-gaap_EmployeeStockMember" xlink:title="label: EmployeeStockMember to us-gaap_EmployeeStockMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensation" xml:lang="en-US" id="us-gaap_ShareBasedCompensation">Share-based compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation" xlink:title="label: ShareBasedCompensation to us-gaap_ShareBasedCompensation" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DomesticCountryMember" xlink:label="DomesticCountryMember" xlink:title="DomesticCountryMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DomesticCountryMember" xml:lang="en-US" id="us-gaap_DomesticCountryMember">Federal [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DomesticCountryMember" xlink:to="us-gaap_DomesticCountryMember" xlink:title="label: DomesticCountryMember to us-gaap_DomesticCountryMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xml:lang="en-US" id="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">Translation of Foreign Currency Financial Statements</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="label: ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock to us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCountryMember" xlink:label="ForeignCountryMember" xlink:title="ForeignCountryMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ForeignCountryMember" xml:lang="en-US" id="us-gaap_ForeignCountryMember">Foreign [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCountryMember" xlink:to="us-gaap_ForeignCountryMember" xlink:title="label: ForeignCountryMember to us-gaap_ForeignCountryMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FurnitureAndFixturesMember" xml:lang="en-US" id="us-gaap_FurnitureAndFixturesMember">Furniture, Fixtures and Office Equipment [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember" xlink:title="label: FurnitureAndFixturesMember to us-gaap_FurnitureAndFixturesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesMember1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FurnitureAndFixturesMember1" xml:lang="en-US" id="us-gaap_FurnitureAndFixturesMember1">Furniture, Fixtures and Office Equipment [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember1" xlink:title="label: FurnitureAndFixturesMember to us-gaap_FurnitureAndFixturesMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="GainLossOnSaleOfPropertyPlantEquipment" xlink:title="GainLossOnSaleOfPropertyPlantEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xml:lang="en-US" id="us-gaap_GainLossOnSaleOfPropertyPlantEquipment">Other operating expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:title="label: GainLossOnSaleOfPropertyPlantEquipment to us-gaap_GainLossOnSaleOfPropertyPlantEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl1" xml:lang="en-US" id="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl1">Gain (Loss) on Disposition of Property Plant Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl1" xlink:title="label: GainLossOnSaleOfPropertyPlantEquipment to us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_GrossProfit" xml:lang="en-US" id="us-gaap_GrossProfit">Gross profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit" xlink:title="label: GrossProfit to us-gaap_GrossProfit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GrossProfit_lbl1" xml:lang="en-US" id="us-gaap_GrossProfit_lbl1">Gross Profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit_lbl1" xlink:title="label: GrossProfit to us-gaap_GrossProfit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xml:lang="en-US" id="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">Impairment of Long-Lived Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="label: ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock to us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeStatementAbstract" xml:lang="en-US" id="us-gaap_IncomeStatementAbstract">Consolidated Statements of Income [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract" xlink:title="label: IncomeStatementAbstract to us-gaap_IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxUncertaintiesAbstract" xlink:label="IncomeTaxUncertaintiesAbstract" xlink:title="IncomeTaxUncertaintiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxUncertaintiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxUncertaintiesAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxUncertaintiesAbstract">Income Tax Uncertainties [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxUncertaintiesAbstract" xlink:to="us-gaap_IncomeTaxUncertaintiesAbstract" xlink:title="label: IncomeTaxUncertaintiesAbstract to us-gaap_IncomeTaxUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxUncertaintiesPolicy" xlink:label="IncomeTaxUncertaintiesPolicy" xlink:title="IncomeTaxUncertaintiesPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxUncertaintiesPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxUncertaintiesPolicy" xml:lang="en-US" id="us-gaap_IncomeTaxUncertaintiesPolicy">Interest and Penalties Related to Uncertain Tax Positions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxUncertaintiesPolicy" xlink:to="us-gaap_IncomeTaxUncertaintiesPolicy" xlink:title="label: IncomeTaxUncertaintiesPolicy to us-gaap_IncomeTaxUncertaintiesPolicy" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureTextBlock">INCOME TAXES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:title="label: IncomeTaxDisclosureTextBlock to us-gaap_IncomeTaxDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureTextBlock_lbl1">Income Tax Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xlink:title="label: IncomeTaxDisclosureTextBlock to us-gaap_IncomeTaxDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">Interest and penalties</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="label: UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued to us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued1">Accrued interest and penalties related to uncertain tax positions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued1" xlink:title="label: UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued to us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="IncomeTaxPolicyTextBlock" xlink:title="IncomeTaxPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxPolicyTextBlock" xml:lang="en-US" id="us-gaap_IncomeTaxPolicyTextBlock">Income Taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" xlink:title="label: IncomeTaxPolicyTextBlock to us-gaap_IncomeTaxPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:label="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:title="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract">Income Tax Provision Reconciliation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:title="label: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_lbl1">Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_lbl1" xlink:title="label: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">Foreign rate differential</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:to="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="label: IncomeTaxReconciliationForeignIncomeTaxRateDifferential to us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">U.S. federal income tax at statutory rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="label: IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate to us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="IncomeTaxReconciliationOtherAdjustments" xlink:title="IncomeTaxReconciliationOtherAdjustments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationOtherAdjustments" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationOtherAdjustments">Other, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationOtherAdjustments" xlink:to="us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:title="label: IncomeTaxReconciliationOtherAdjustments to us-gaap_IncomeTaxReconciliationOtherAdjustments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:label="IncomeTaxReconciliationTaxContingencies" xlink:title="IncomeTaxReconciliationTaxContingencies" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationTaxContingencies" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationTaxContingencies">Uncertain tax positions, including reserves, settlements and resolutions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationTaxContingencies" xlink:to="us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:title="label: IncomeTaxReconciliationTaxContingencies to us-gaap_IncomeTaxReconciliationTaxContingencies" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="IncomeTaxReconciliationTaxCredits" xlink:title="IncomeTaxReconciliationTaxCredits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationTaxCredits" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncomeTaxReconciliationTaxCredits" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationTaxCredits">Tax credits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationTaxCredits" xlink:to="us-gaap_IncomeTaxReconciliationTaxCredits" xlink:title="label: IncomeTaxReconciliationTaxCredits to us-gaap_IncomeTaxReconciliationTaxCredits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationTaxCredits_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationTaxCredits_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationTaxCredits_lbl1">Effective Income Tax Rate Reconciliation, Tax Credit, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationTaxCredits" xlink:to="us-gaap_IncomeTaxReconciliationTaxCredits_lbl1" xlink:title="label: IncomeTaxReconciliationTaxCredits to us-gaap_IncomeTaxReconciliationTaxCredits_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNetAbstract" xlink:label="IncomeTaxesPaidNetAbstract" xlink:title="IncomeTaxesPaidNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaidNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxesPaidNetAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxesPaidNetAbstract">Income Tax Payments and Refunds [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxesPaidNetAbstract" xlink:to="us-gaap_IncomeTaxesPaidNetAbstract" xlink:title="label: IncomeTaxesPaidNetAbstract to us-gaap_IncomeTaxesPaidNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIncomeTaxRefunds" xlink:label="ProceedsFromIncomeTaxRefunds" xlink:title="ProceedsFromIncomeTaxRefunds" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromIncomeTaxRefunds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromIncomeTaxRefunds" xml:lang="en-US" id="us-gaap_ProceedsFromIncomeTaxRefunds">Income tax refunds received</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromIncomeTaxRefunds" xlink:to="us-gaap_ProceedsFromIncomeTaxRefunds" xlink:title="label: ProceedsFromIncomeTaxRefunds to us-gaap_ProceedsFromIncomeTaxRefunds" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xml:lang="en-US" id="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">Share-based payment awards (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="label: IncrementalCommonSharesAttributableToShareBasedPaymentArrangements to us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryFinishedGoods" xml:lang="en-US" id="us-gaap_InventoryFinishedGoods">Finished goods</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods" xlink:title="label: InventoryFinishedGoods to us-gaap_InventoryFinishedGoods" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_InventoryNet" xml:lang="en-US" id="us-gaap_InventoryNet">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet" xlink:title="label: InventoryNet to us-gaap_InventoryNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_InventoryNet1" xml:lang="en-US" id="us-gaap_InventoryNet1">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet1" xlink:title="label: InventoryNet to us-gaap_InventoryNet1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryNet_lbl2" xml:lang="en-US" id="us-gaap_InventoryNet_lbl2">Inventory, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet_lbl2" xlink:title="label: InventoryNet to us-gaap_InventoryNet_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="InventoryWorkInProcess" xlink:title="InventoryWorkInProcess" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryWorkInProcess" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryWorkInProcess" xml:lang="en-US" id="us-gaap_InventoryWorkInProcess">Work in process</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess" xlink:title="label: InventoryWorkInProcess to us-gaap_InventoryWorkInProcess" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="InventoryPolicyTextBlock" xlink:title="InventoryPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InventoryPolicyTextBlock" xml:lang="en-US" id="us-gaap_InventoryPolicyTextBlock">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock" xlink:title="label: InventoryPolicyTextBlock to us-gaap_InventoryPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_InventoryPolicyTextBlock_lbl1">Inventory, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl1" xlink:title="label: InventoryPolicyTextBlock to us-gaap_InventoryPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentCreditMember" xlink:label="InvestmentCreditMember" xlink:title="InvestmentCreditMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InvestmentCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InvestmentCreditMember" xml:lang="en-US" id="us-gaap_InvestmentCreditMember">Federal 48D credit [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InvestmentCreditMember" xlink:to="us-gaap_InvestmentCreditMember" xlink:title="label: InvestmentCreditMember to us-gaap_InvestmentCreditMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InvestmentCreditMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InvestmentCreditMember_lbl1" xml:lang="en-US" id="us-gaap_InvestmentCreditMember_lbl1">Investment Tax Credit Carryforward [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InvestmentCreditMember" xlink:to="us-gaap_InvestmentCreditMember_lbl1" xlink:title="label: InvestmentCreditMember to us-gaap_InvestmentCreditMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="InvestmentPolicyTextBlock" xlink:title="InvestmentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InvestmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InvestmentPolicyTextBlock" xml:lang="en-US" id="us-gaap_InvestmentPolicyTextBlock">Investments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InvestmentPolicyTextBlock" xlink:to="us-gaap_InvestmentPolicyTextBlock" xlink:title="label: InvestmentPolicyTextBlock to us-gaap_InvestmentPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract" xlink:label="InvestmentsAbstract" xlink:title="InvestmentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InvestmentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InvestmentsAbstract" xml:lang="en-US" id="us-gaap_InvestmentsAbstract">INVESTMENTS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InvestmentsAbstract" xlink:to="us-gaap_InvestmentsAbstract" xlink:title="label: InvestmentsAbstract to us-gaap_InvestmentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LandMember" xlink:label="LandMember" xlink:title="LandMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LandMember" xml:lang="en-US" id="us-gaap_LandMember">Land [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LandMember" xlink:to="us-gaap_LandMember" xlink:title="label: LandMember to us-gaap_LandMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="LeaseholdImprovementsMember" xlink:title="LeaseholdImprovementsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeaseholdImprovementsMember" xml:lang="en-US" id="us-gaap_LeaseholdImprovementsMember">Leasehold Improvements [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:title="label: LeaseholdImprovementsMember to us-gaap_LeaseholdImprovementsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_Liabilities" xml:lang="en-US" id="us-gaap_Liabilities">Total liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Liabilities" xlink:to="us-gaap_Liabilities" xlink:title="label: Liabilities to us-gaap_Liabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Liabilities_lbl1" xml:lang="en-US" id="us-gaap_Liabilities_lbl1">Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Liabilities" xlink:to="us-gaap_Liabilities_lbl1" xlink:title="label: Liabilities to us-gaap_Liabilities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity">Total liabilities and equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity_lbl1">Liabilities and Equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquityAbstract">LIABILITIES AND EQUITY</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:title="label: LiabilitiesAndStockholdersEquityAbstract to us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl1">Liabilities and Equity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl1" xlink:title="label: LiabilitiesAndStockholdersEquityAbstract to us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:label="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="LineOfCreditFacilityCurrentBorrowingCapacity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity">Current borrowing capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="label: LineOfCreditFacilityCurrentBorrowingCapacity to us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">Maximum borrowing capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="label: LineOfCreditFacilityMaximumBorrowingCapacity to us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">Next 12 months</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl1">Long-Term Debt, Maturity, Year One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl1" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">Months 49 - 60</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">Months 37 - 48</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl1">Long-Term Debt, Maturity, Year Four</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl1" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">Months 25 - 36</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl1">Long-Term Debt, Maturity, Year Three</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl1" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">Months 13 - 24</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl1">Long-Term Debt, Maturity, Year Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl1" xlink:title="label: LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo to us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_MachineryAndEquipmentMember" xml:lang="en-US" id="us-gaap_MachineryAndEquipmentMember">Machinery and Equipment [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:title="label: MachineryAndEquipmentMember to us-gaap_MachineryAndEquipmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentMember1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_MachineryAndEquipmentMember1" xml:lang="en-US" id="us-gaap_MachineryAndEquipmentMember1">Machinery and Equipment [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember1" xlink:title="label: MachineryAndEquipmentMember to us-gaap_MachineryAndEquipmentMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MinorityInterest" xlink:label="MinorityInterest" xlink:title="MinorityInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_MinorityInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_MinorityInterest" xml:lang="en-US" id="us-gaap_MinorityInterest">Noncontrolling interests</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinorityInterest" xlink:to="us-gaap_MinorityInterest" xlink:title="label: MinorityInterest to us-gaap_MinorityInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="MoneyMarketFundsMember" xlink:title="MoneyMarketFundsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_MoneyMarketFundsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_MoneyMarketFundsMember" xml:lang="en-US" id="us-gaap_MoneyMarketFundsMember">Money Market Funds [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MoneyMarketFundsMember" xlink:to="us-gaap_MoneyMarketFundsMember" xlink:title="label: MoneyMarketFundsMember to us-gaap_MoneyMarketFundsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities">Net cash used in financing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">Cash flows used in financing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInFinancingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities">Net cash used in investing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">Cash flows used in investing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInInvestingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities">Net cash provided by operating activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">Cash flows from operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetIncomeLoss" xml:lang="en-US" id="us-gaap_NetIncomeLoss">Net income attributable to Photronics, Inc. shareholders</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLoss1" xml:lang="en-US" id="us-gaap_NetIncomeLoss1">Net income attributable to Photronics, Inc. shareholders</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss1" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="NonoperatingIncomeExpenseAbstract" xlink:title="NonoperatingIncomeExpenseAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NonoperatingIncomeExpenseAbstract" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpenseAbstract">Non-operating income (expense):</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:title="label: NonoperatingIncomeExpenseAbstract to us-gaap_NonoperatingIncomeExpenseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsNoncurrent" xml:lang="en-US" id="us-gaap_AssetsNoncurrent">Noncurrent assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent" xlink:title="label: AssetsNoncurrent to us-gaap_AssetsNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesNoncurrent" xml:lang="en-US" id="us-gaap_LiabilitiesNoncurrent">Noncurrent liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent" xlink:title="label: LiabilitiesNoncurrent to us-gaap_LiabilitiesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="OperatingLossCarryforwards" xlink:title="OperatingLossCarryforwards" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLossCarryforwards" xml:lang="en-US" id="us-gaap_OperatingLossCarryforwards">Operating loss carryforwards amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards" xlink:title="label: OperatingLossCarryforwards to us-gaap_OperatingLossCarryforwards" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingIncomeLoss" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss">Operating income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingIncomeLoss_lbl1" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss_lbl1">Operating Income (Loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl1" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:title="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">Other comprehensive income (loss), net of tax of $0:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:title="label: OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract to us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl1">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl1" xlink:title="label: OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract to us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTax" xlink:label="OtherComprehensiveIncomeLossTax" xlink:title="OtherComprehensiveIncomeLossTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossTax" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossTax">Other comprehensive income (loss), tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossTax" xlink:title="label: OtherComprehensiveIncomeLossTax to us-gaap_OtherComprehensiveIncomeLossTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossTax1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossTax1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossTax1">Other comprehensive (loss) income, tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossTax1" xlink:title="label: OtherComprehensiveIncomeLossTax to us-gaap_OtherComprehensiveIncomeLossTax1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_OtherAssetsCurrent" xml:lang="en-US" id="us-gaap_OtherAssetsCurrent">Other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent" xlink:title="label: OtherAssetsCurrent to us-gaap_OtherAssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OtherAssetsCurrent1" xml:lang="en-US" id="us-gaap_OtherAssetsCurrent1">Total other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent1" xlink:title="label: OtherAssetsCurrent to us-gaap_OtherAssetsCurrent1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsCurrent_lbl2" xml:lang="en-US" id="us-gaap_OtherAssetsCurrent_lbl2">Other Assets, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent_lbl2" xlink:title="label: OtherAssetsCurrent to us-gaap_OtherAssetsCurrent_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="PaymentsForProceedsFromOtherInvestingActivities" xlink:title="PaymentsForProceedsFromOtherInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xml:lang="en-US" id="us-gaap_PaymentsForProceedsFromOtherInvestingActivities">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsForProceedsFromOtherInvestingActivities" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:title="label: PaymentsForProceedsFromOtherInvestingActivities to us-gaap_PaymentsForProceedsFromOtherInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl1" xml:lang="en-US" id="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl1">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsForProceedsFromOtherInvestingActivities" xlink:to="us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl1" xlink:title="label: PaymentsForProceedsFromOtherInvestingActivities to us-gaap_PaymentsForProceedsFromOtherInvestingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US" id="us-gaap_OtherNonoperatingIncomeExpense">Interest income and other income, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:title="label: OtherNonoperatingIncomeExpense to us-gaap_OtherNonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherNonoperatingIncomeExpense_lbl1" xml:lang="en-US" id="us-gaap_OtherNonoperatingIncomeExpense_lbl1">Other Nonoperating Income (Expense)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_lbl1" xlink:title="label: OtherNonoperatingIncomeExpense to us-gaap_OtherNonoperatingIncomeExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:title="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xml:lang="en-US" id="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">EMPLOYEE RETIREMENT PLANS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:title="label: PensionAndOtherPostretirementBenefitsDisclosureTextBlock to us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl1">Retirement Benefits [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl1" xlink:title="label: PensionAndOtherPostretirementBenefitsDisclosureTextBlock to us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="PreferredStockSharesAuthorized" xlink:title="PreferredStockSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PreferredStockSharesAuthorized" xml:lang="en-US" id="us-gaap_PreferredStockSharesAuthorized">Preferred stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized" xlink:title="label: PreferredStockSharesAuthorized to us-gaap_PreferredStockSharesAuthorized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="PreferredStockSharesIssued" xlink:title="PreferredStockSharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PreferredStockSharesIssued" xml:lang="en-US" id="us-gaap_PreferredStockSharesIssued">Preferred stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued" xlink:title="label: PreferredStockSharesIssued to us-gaap_PreferredStockSharesIssued" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="PreferredStockSharesOutstanding" xlink:title="PreferredStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PreferredStockSharesOutstanding" xml:lang="en-US" id="us-gaap_PreferredStockSharesOutstanding">Preferred stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding" xlink:title="label: PreferredStockSharesOutstanding to us-gaap_PreferredStockSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="PreferredStockParOrStatedValuePerShare" xlink:title="PreferredStockParOrStatedValuePerShare" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PreferredStockParOrStatedValuePerShare" xml:lang="en-US" id="us-gaap_PreferredStockParOrStatedValuePerShare">Preferred stock, par value (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:title="label: PreferredStockParOrStatedValuePerShare to us-gaap_PreferredStockParOrStatedValuePerShare" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PrepaidExpenseCurrent" xml:lang="en-US" id="us-gaap_PrepaidExpenseCurrent">Prepaid expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:title="label: PrepaidExpenseCurrent to us-gaap_PrepaidExpenseCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PrepaidExpenseCurrent_lbl1" xml:lang="en-US" id="us-gaap_PrepaidExpenseCurrent_lbl1">Prepaid Expense, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent_lbl1" xlink:title="label: PrepaidExpenseCurrent to us-gaap_PrepaidExpenseCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMinorityShareholders" xlink:label="ProceedsFromMinorityShareholders" xlink:title="ProceedsFromMinorityShareholders" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromMinorityShareholders" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromMinorityShareholders" xml:lang="en-US" id="us-gaap_ProceedsFromMinorityShareholders">Contributions from noncontrolling interests</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromMinorityShareholders" xlink:to="us-gaap_ProceedsFromMinorityShareholders" xlink:title="label: ProceedsFromMinorityShareholders to us-gaap_ProceedsFromMinorityShareholders" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="ProceedsFromStockOptionsExercised" xlink:title="ProceedsFromStockOptionsExercised" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromStockOptionsExercised" xml:lang="en-US" id="us-gaap_ProceedsFromStockOptionsExercised">Cash received from options exercises</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:title="label: ProceedsFromStockOptionsExercised to us-gaap_ProceedsFromStockOptionsExercised" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentGross">Property, plant and equipment, gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:title="label: PropertyPlantAndEquipmentGross to us-gaap_PropertyPlantAndEquipmentGross" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet">Property, plant and equipment, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNet1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet1">Property, plant and equipment, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet1" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentNet_lbl2" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet_lbl2">Property, Plant and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl2" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentAbstract" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentAbstract">PROPERTY, PLANT, AND EQUIPMENT, NET [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:title="label: PropertyPlantAndEquipmentAbstract to us-gaap_PropertyPlantAndEquipmentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentAbstract1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentAbstract1">Property, Plant and Equipment [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract1" xlink:title="label: PropertyPlantAndEquipmentAbstract to us-gaap_PropertyPlantAndEquipmentAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">Property, Plant and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="label: PropertyPlantAndEquipmentPolicyTextBlock to us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl1">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl1" xlink:title="label: PropertyPlantAndEquipmentPolicyTextBlock to us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="PaymentsToAcquireIntangibleAssets" xlink:title="PaymentsToAcquireIntangibleAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsToAcquireIntangibleAssets" xml:lang="en-US" id="us-gaap_PaymentsToAcquireIntangibleAssets">Purchases of intangible assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:title="label: PaymentsToAcquireIntangibleAssets to us-gaap_PaymentsToAcquireIntangibleAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsToAcquireIntangibleAssets_lbl1" xml:lang="en-US" id="us-gaap_PaymentsToAcquireIntangibleAssets_lbl1">Payments to Acquire Intangible Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_lbl1" xlink:title="label: PaymentsToAcquireIntangibleAssets to us-gaap_PaymentsToAcquireIntangibleAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">Purchases of property, plant and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="PaymentsToAcquireShortTermInvestments" xlink:title="PaymentsToAcquireShortTermInvestments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsToAcquireShortTermInvestments" xml:lang="en-US" id="us-gaap_PaymentsToAcquireShortTermInvestments">Purchases of short-term investments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquireShortTermInvestments" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments" xlink:title="label: PaymentsToAcquireShortTermInvestments to us-gaap_PaymentsToAcquireShortTermInvestments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireShortTermInvestments_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsToAcquireShortTermInvestments_lbl1" xml:lang="en-US" id="us-gaap_PaymentsToAcquireShortTermInvestments_lbl1">Payments to Acquire Short-Term Investments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquireShortTermInvestments" xlink:to="us-gaap_PaymentsToAcquireShortTermInvestments_lbl1" xlink:title="label: PaymentsToAcquireShortTermInvestments to us-gaap_PaymentsToAcquireShortTermInvestments_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:title="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xml:lang="en-US" id="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">ACCOUNTS RECEIVABLE</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:title="label: LoansNotesTradeAndOtherReceivablesDisclosureTextBlock to us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl1">Loans, Notes, Trade and Other Receivables Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl1" xlink:title="label: LoansNotesTradeAndOtherReceivablesDisclosureTextBlock to us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:label="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xml:lang="en-US" id="us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward">Unrecognized Tax Benefits [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="label: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="RelatedPartyTransactionLineItems" xlink:title="RelatedPartyTransactionLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RelatedPartyTransactionLineItems" xml:lang="en-US" id="us-gaap_RelatedPartyTransactionLineItems">Related Party Transaction [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionLineItems" xlink:title="label: RelatedPartyTransactionLineItems to us-gaap_RelatedPartyTransactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="RelatedPartyTransactionsDisclosureTextBlock" xlink:title="RelatedPartyTransactionsDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xml:lang="en-US" id="us-gaap_RelatedPartyTransactionsDisclosureTextBlock">RELATED PARTY TRANSACTIONS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:title="label: RelatedPartyTransactionsDisclosureTextBlock to us-gaap_RelatedPartyTransactionsDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl1">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl1" xlink:title="label: RelatedPartyTransactionsDisclosureTextBlock to us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xml:lang="en-US" id="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable">Schedule of Related Party Transactions, by Related Party [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="label: ScheduleOfRelatedPartyTransactionsByRelatedPartyTable to us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="RepaymentsOfLongTermDebt" xlink:title="RepaymentsOfLongTermDebt" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_RepaymentsOfLongTermDebt" xml:lang="en-US" id="us-gaap_RepaymentsOfLongTermDebt">Repayments of long-term debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:title="label: RepaymentsOfLongTermDebt to us-gaap_RepaymentsOfLongTermDebt" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RepaymentsOfLongTermDebt_lbl1" xml:lang="en-US" id="us-gaap_RepaymentsOfLongTermDebt_lbl1">Repayments of Long-Term Debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt_lbl1" xlink:title="label: RepaymentsOfLongTermDebt to us-gaap_RepaymentsOfLongTermDebt_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="PaymentsForRepurchaseOfCommonStock" xlink:title="PaymentsForRepurchaseOfCommonStock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsForRepurchaseOfCommonStock" xml:lang="en-US" id="us-gaap_PaymentsForRepurchaseOfCommonStock">Purchases of treasury stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:title="label: PaymentsForRepurchaseOfCommonStock to us-gaap_PaymentsForRepurchaseOfCommonStock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl1" xml:lang="en-US" id="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl1">Payments for Repurchase of Common Stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl1" xlink:title="label: PaymentsForRepurchaseOfCommonStock to us-gaap_PaymentsForRepurchaseOfCommonStock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="ResearchAndDevelopmentExpensePolicy" xlink:title="ResearchAndDevelopmentExpensePolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchAndDevelopmentExpensePolicy" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpensePolicy">Research and Development</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpensePolicy" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:title="label: ResearchAndDevelopmentExpensePolicy to us-gaap_ResearchAndDevelopmentExpensePolicy" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchMember" xlink:label="ResearchMember" xlink:title="ResearchMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ResearchMember" xml:lang="en-US" id="us-gaap_ResearchMember">Federal Research and Development [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchMember" xlink:to="us-gaap_ResearchMember" xlink:title="label: ResearchMember to us-gaap_ResearchMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchMember_lbl1" xml:lang="en-US" id="us-gaap_ResearchMember_lbl1">Research Tax Credit Carryforward [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchMember" xlink:to="us-gaap_ResearchMember_lbl1" xlink:title="label: ResearchMember to us-gaap_ResearchMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US" id="us-gaap_RetainedEarningsAccumulatedDeficit">Retained earnings</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:title="label: RetainedEarningsAccumulatedDeficit to us-gaap_RetainedEarningsAccumulatedDeficit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="RevenueRecognitionPolicyTextBlock" xlink:title="RevenueRecognitionPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRecognitionPolicyTextBlock" xml:lang="en-US" id="us-gaap_RevenueRecognitionPolicyTextBlock">Revenue Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:title="label: RevenueRecognitionPolicyTextBlock to us-gaap_RevenueRecognitionPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="InventoryDisclosureTextBlock" xlink:title="InventoryDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryDisclosureTextBlock" xml:lang="en-US" id="us-gaap_InventoryDisclosureTextBlock">INVENTORIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:title="label: InventoryDisclosureTextBlock to us-gaap_InventoryDisclosureTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:title="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">Share-based Compensation Expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:title="label: ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock to us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="PropertyPlantAndEquipmentTextBlock" xlink:title="PropertyPlantAndEquipmentTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentTextBlock" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentTextBlock">Property, Plant and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:title="label: PropertyPlantAndEquipmentTextBlock to us-gaap_PropertyPlantAndEquipmentTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl1">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl1" xlink:title="label: PropertyPlantAndEquipmentTextBlock to us-gaap_PropertyPlantAndEquipmentTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xml:lang="en-US" id="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock">Concentration of Risk Factor</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:to="us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="label: SchedulesOfConcentrationOfRiskByRiskFactorTextBlock to us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="SellingGeneralAndAdministrativeExpense" xlink:title="SellingGeneralAndAdministrativeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SellingGeneralAndAdministrativeExpense" xml:lang="en-US" id="us-gaap_SellingGeneralAndAdministrativeExpense">Selling, general and administrative</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:title="label: SellingGeneralAndAdministrativeExpense to us-gaap_SellingGeneralAndAdministrativeExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:label="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xml:lang="en-US" id="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract">Share-based Compensation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="label: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract_lbl1">Share-Based Payment Arrangement, Disclosure [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract_lbl1" xlink:title="label: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">Cancelled (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">Granted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">Granted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">Outstanding at end of period (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1">Outstanding at beginning of period (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">Outstanding at end of period (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1">Outstanding at beginning of period (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">Unrecognized compensation cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">Vested (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue">Fair value of awards for which restrictions lapsed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">Vested (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">Maximum number of shares of common stock that may be issued (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">Total intrinsic value of options exercised</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">Outstanding at end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">Outstanding at end of period (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber1">Outstanding at beginning of period (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">Outstanding at beginning of period (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice1">Outstanding at end of period (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">Exercisable at end of period (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">Exercisable at end of period (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain">Equity Award [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="label: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US" id="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="label: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermInvestments" xlink:label="ShortTermInvestments" xlink:title="ShortTermInvestments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShortTermInvestments" xml:lang="en-US" id="us-gaap_ShortTermInvestments">Short-term investments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShortTermInvestments" xlink:to="us-gaap_ShortTermInvestments" xlink:title="label: ShortTermInvestments to us-gaap_ShortTermInvestments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="SignificantAccountingPoliciesTextBlock" xlink:title="SignificantAccountingPoliciesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_SignificantAccountingPoliciesTextBlock" xml:lang="en-US" id="us-gaap_SignificantAccountingPoliciesTextBlock">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:title="label: SignificantAccountingPoliciesTextBlock to us-gaap_SignificantAccountingPoliciesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SignificantAccountingPoliciesTextBlock_lbl1" xml:lang="en-US" id="us-gaap_SignificantAccountingPoliciesTextBlock_lbl1">Significant Accounting Policies [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl1" xlink:title="label: SignificantAccountingPoliciesTextBlock to us-gaap_SignificantAccountingPoliciesTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="StateAndLocalJurisdictionMember" xlink:title="StateAndLocalJurisdictionMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StateAndLocalJurisdictionMember" xml:lang="en-US" id="us-gaap_StateAndLocalJurisdictionMember">State [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StateAndLocalJurisdictionMember" xlink:to="us-gaap_StateAndLocalJurisdictionMember" xlink:title="label: StateAndLocalJurisdictionMember to us-gaap_StateAndLocalJurisdictionMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StateAndLocalJurisdictionMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StateAndLocalJurisdictionMember_lbl1" xml:lang="en-US" id="us-gaap_StateAndLocalJurisdictionMember_lbl1">State and Local Jurisdiction [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StateAndLocalJurisdictionMember" xlink:to="us-gaap_StateAndLocalJurisdictionMember_lbl1" xlink:title="label: StateAndLocalJurisdictionMember to us-gaap_StateAndLocalJurisdictionMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfCashFlowsAbstract" xml:lang="en-US" id="us-gaap_StatementOfCashFlowsAbstract">Condensed Consolidated Statements of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract" xlink:title="label: StatementOfCashFlowsAbstract to us-gaap_StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xml:lang="en-US" id="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">Consolidated Statements of Comprehensive Income (Loss) [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="label: StatementOfIncomeAndComprehensiveIncomeAbstract to us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="StatementOfStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfStockholdersEquityAbstract" xml:lang="en-US" id="us-gaap_StatementOfStockholdersEquityAbstract">Consolidated Statements of Equity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract" xlink:title="label: StatementOfStockholdersEquityAbstract to us-gaap_StatementOfStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xml:lang="en-US" id="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">Share-Based Compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="label: ShareBasedCompensationOptionAndIncentivePlansPolicy to us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1">Share-Based Payment Arrangement [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xlink:title="label: ShareBasedCompensationOptionAndIncentivePlansPolicy to us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="SupplementalCashFlowInformationAbstract" xlink:title="SupplementalCashFlowInformationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SupplementalCashFlowInformationAbstract" xml:lang="en-US" id="us-gaap_SupplementalCashFlowInformationAbstract">Supplemental disclosure of non-cash information:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" xlink:title="label: SupplementalCashFlowInformationAbstract to us-gaap_SupplementalCashFlowInformationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="TaxCreditCarryforwardAmount" xlink:title="TaxCreditCarryforwardAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TaxCreditCarryforwardAmount" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardAmount">Tax credit carryforward amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardAmount" xlink:to="us-gaap_TaxCreditCarryforwardAmount" xlink:title="label: TaxCreditCarryforwardAmount to us-gaap_TaxCreditCarryforwardAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardAmount_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TaxCreditCarryforwardAmount_lbl1" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardAmount_lbl1">Tax Credit Carryforward, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardAmount" xlink:to="us-gaap_TaxCreditCarryforwardAmount_lbl1" xlink:title="label: TaxCreditCarryforwardAmount to us-gaap_TaxCreditCarryforwardAmount_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="TaxCreditCarryforwardNameDomain" xlink:title="TaxCreditCarryforwardNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TaxCreditCarryforwardNameDomain" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardNameDomain">Tax Credit Carryforward, Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="us-gaap_TaxCreditCarryforwardNameDomain" xlink:title="label: TaxCreditCarryforwardNameDomain to us-gaap_TaxCreditCarryforwardNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="TaxCreditCarryforwardAxis" xlink:title="TaxCreditCarryforwardAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TaxCreditCarryforwardAxis" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardAxis">Tax Credit Carryforward [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardAxis" xlink:to="us-gaap_TaxCreditCarryforwardAxis" xlink:title="label: TaxCreditCarryforwardAxis to us-gaap_TaxCreditCarryforwardAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="IncomeTaxesPaid" xlink:title="IncomeTaxesPaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxesPaid" xml:lang="en-US" id="us-gaap_IncomeTaxesPaid">Income taxes paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid" xlink:title="label: IncomeTaxesPaid to us-gaap_IncomeTaxesPaid" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BankTimeDepositsMember" xlink:label="BankTimeDepositsMember" xlink:title="BankTimeDepositsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BankTimeDepositsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_BankTimeDepositsMember" xml:lang="en-US" id="us-gaap_BankTimeDepositsMember">Time Deposits [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BankTimeDepositsMember" xlink:to="us-gaap_BankTimeDepositsMember" xlink:title="label: BankTimeDepositsMember to us-gaap_BankTimeDepositsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BankTimeDepositsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BankTimeDepositsMember_lbl1" xml:lang="en-US" id="us-gaap_BankTimeDepositsMember_lbl1">Bank Time Deposits [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BankTimeDepositsMember" xlink:to="us-gaap_BankTimeDepositsMember_lbl1" xlink:title="label: BankTimeDepositsMember to us-gaap_BankTimeDepositsMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AssetsCurrent" xml:lang="en-US" id="us-gaap_AssetsCurrent">Total current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrent1" xml:lang="en-US" id="us-gaap_AssetsCurrent1">Current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent1" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrentAbstract" xml:lang="en-US" id="us-gaap_AssetsCurrentAbstract">Current assets:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:title="label: AssetsCurrentAbstract to us-gaap_AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseAbstract" xlink:label="ResearchAndDevelopmentExpenseAbstract" xlink:title="ResearchAndDevelopmentExpenseAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchAndDevelopmentExpenseAbstract" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpenseAbstract">Research and Development Expense [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpenseAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpenseAbstract" xlink:title="label: ResearchAndDevelopmentExpenseAbstract to us-gaap_ResearchAndDevelopmentExpenseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="AccountsReceivableGrossCurrent" xlink:title="AccountsReceivableGrossCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableGrossCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccountsReceivableGrossCurrent" xml:lang="en-US" id="us-gaap_AccountsReceivableGrossCurrent">Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableGrossCurrent" xlink:to="us-gaap_AccountsReceivableGrossCurrent" xlink:title="label: AccountsReceivableGrossCurrent to us-gaap_AccountsReceivableGrossCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableGrossCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableGrossCurrent_lbl1" xml:lang="en-US" id="us-gaap_AccountsReceivableGrossCurrent_lbl1">Accounts Receivable, before Allowance for Credit Loss, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableGrossCurrent" xlink:to="us-gaap_AccountsReceivableGrossCurrent_lbl1" xlink:title="label: AccountsReceivableGrossCurrent to us-gaap_AccountsReceivableGrossCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:label="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:title="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xml:lang="en-US" id="us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract">SHARE REPURCHASE PROGRAMS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:to="us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:title="label: TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract to us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="TreasuryStockAcquiredAverageCostPerShare" xlink:title="TreasuryStockAcquiredAverageCostPerShare" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xml:lang="en-US" id="us-gaap_TreasuryStockAcquiredAverageCostPerShare">Average price paid per share (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockAcquiredAverageCostPerShare" xlink:to="us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:title="label: TreasuryStockAcquiredAverageCostPerShare to us-gaap_TreasuryStockAcquiredAverageCostPerShare" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesRetired" xlink:label="TreasuryStockSharesRetired" xlink:title="TreasuryStockSharesRetired" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesRetired" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_TreasuryStockSharesRetired" xml:lang="en-US" id="us-gaap_TreasuryStockSharesRetired">Retirement of treasury stock (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesRetired" xlink:to="us-gaap_TreasuryStockSharesRetired" xlink:title="label: TreasuryStockSharesRetired to us-gaap_TreasuryStockSharesRetired" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesRetired1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_TreasuryStockSharesRetired1" xml:lang="en-US" id="us-gaap_TreasuryStockSharesRetired1">Number of shares repurchased (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesRetired" xlink:to="us-gaap_TreasuryStockSharesRetired1" xlink:title="label: TreasuryStockSharesRetired to us-gaap_TreasuryStockSharesRetired1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesRetired_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockSharesRetired_lbl2" xml:lang="en-US" id="us-gaap_TreasuryStockSharesRetired_lbl2">Treasury Stock, Shares, Retired</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesRetired" xlink:to="us-gaap_TreasuryStockSharesRetired_lbl2" xlink:title="label: TreasuryStockSharesRetired to us-gaap_TreasuryStockSharesRetired_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_USTreasuryAndGovernmentMember" xlink:label="USTreasuryAndGovernmentMember" xlink:title="USTreasuryAndGovernmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_USTreasuryAndGovernmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_USTreasuryAndGovernmentMember" xml:lang="en-US" id="us-gaap_USTreasuryAndGovernmentMember">U.S. Government Securities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="USTreasuryAndGovernmentMember" xlink:to="us-gaap_USTreasuryAndGovernmentMember" xlink:title="label: USTreasuryAndGovernmentMember to us-gaap_USTreasuryAndGovernmentMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="UnrecognizedTaxBenefits" xlink:title="UnrecognizedTaxBenefits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefits" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_UnrecognizedTaxBenefits" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefits">Balance at beginning of year before interest and penalties</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits" xlink:title="label: UnrecognizedTaxBenefits to us-gaap_UnrecognizedTaxBenefits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefits1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_UnrecognizedTaxBenefits1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefits1">Balance at end of year before interest and penalties</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits1" xlink:title="label: UnrecognizedTaxBenefits to us-gaap_UnrecognizedTaxBenefits1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefits_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefits_lbl2" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefits_lbl2">Unrecognized Tax Benefits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits_lbl2" xlink:title="label: UnrecognizedTaxBenefits to us-gaap_UnrecognizedTaxBenefits_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">Lapses of statutes of limitations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="label: UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations to us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_lbl1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_lbl1">Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_lbl1" xlink:title="label: UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations to us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions">Reductions of tax positions in prior years</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="label: UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions to us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities">Settlements</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="label: UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities to us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_lbl1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_lbl1">Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_lbl1" xlink:title="label: UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities to us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">Additions based on current year tax positions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="label: UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions to us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">Additions of tax positions in prior years</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="label: UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions to us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl1">Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl1" xlink:title="label: UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions to us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate">Unrecognized tax benefits that, if recognized, would impact the effective tax rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:to="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="label: UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate to us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl1" xml:lang="en-US" id="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl1">Unrecognized Tax Benefits that Would Impact Effective Tax Rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:to="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl1" xlink:title="label: UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate to us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnremittedEarningsInForeignInvestmentPolicy" xlink:label="UnremittedEarningsInForeignInvestmentPolicy" xlink:title="UnremittedEarningsInForeignInvestmentPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnremittedEarningsInForeignInvestmentPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnremittedEarningsInForeignInvestmentPolicy" xml:lang="en-US" id="us-gaap_UnremittedEarningsInForeignInvestmentPolicy">Unremitted Earnings in Foreign Investment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnremittedEarningsInForeignInvestmentPolicy" xlink:to="us-gaap_UnremittedEarningsInForeignInvestmentPolicy" xlink:title="label: UnremittedEarningsInForeignInvestmentPolicy to us-gaap_UnremittedEarningsInForeignInvestmentPolicy" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" xlink:label="ScheduleOfVariableInterestEntitiesTextBlock" xlink:title="ScheduleOfVariableInterestEntitiesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfVariableInterestEntitiesTextBlock">Carrying Amounts and Exposure to Loss Related to Assets and Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfVariableInterestEntitiesTextBlock" xlink:to="us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" xlink:title="label: ScheduleOfVariableInterestEntitiesTextBlock to us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfVariableInterestEntitiesTable" xml:lang="en-US" id="us-gaap_ScheduleOfVariableInterestEntitiesTable">Variable Interest Entity [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:title="label: ScheduleOfVariableInterestEntitiesTable to us-gaap_ScheduleOfVariableInterestEntitiesTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityLineItems" xml:lang="en-US" id="us-gaap_VariableInterestEntityLineItems">Variable Interest Entity [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityLineItems" xlink:to="us-gaap_VariableInterestEntityLineItems" xlink:title="label: VariableInterestEntityLineItems to us-gaap_VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityNotPrimaryBeneficiaryMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xml:lang="en-US" id="us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember">DNP [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:to="us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="label: VariableInterestEntityNotPrimaryBeneficiaryMember to us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xml:lang="en-US" id="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember">Photronics Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityPrimaryBeneficiaryMember" xlink:to="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="label: VariableInterestEntityPrimaryBeneficiaryMember to us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember1" xml:lang="en-US" id="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember1">Photronics Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityPrimaryBeneficiaryMember" xlink:to="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember1" xlink:title="label: VariableInterestEntityPrimaryBeneficiaryMember to us-gaap_VariableInterestEntityPrimaryBeneficiaryMember1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember_lbl2" xml:lang="en-US" id="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember_lbl2">Variable Interest Entity, Primary Beneficiary [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityPrimaryBeneficiaryMember" xlink:to="us-gaap_VariableInterestEntityPrimaryBeneficiaryMember_lbl2" xlink:title="label: VariableInterestEntityPrimaryBeneficiaryMember to us-gaap_VariableInterestEntityPrimaryBeneficiaryMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityOwnershipPercentage" xlink:label="VariableInterestEntityOwnershipPercentage" xlink:title="VariableInterestEntityOwnershipPercentage" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityOwnershipPercentage" xml:lang="en-US" id="us-gaap_VariableInterestEntityOwnershipPercentage">Ownership percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityOwnershipPercentage" xlink:to="us-gaap_VariableInterestEntityOwnershipPercentage" xlink:title="label: VariableInterestEntityOwnershipPercentage to us-gaap_VariableInterestEntityOwnershipPercentage" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">Diluted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1">Weighted-average common shares-Diluted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xml:lang="en-US" id="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">Potentially dilutive common shares (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="label: WeightedAverageNumberDilutedSharesOutstandingAdjustment to us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl1">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl1" xlink:title="label: WeightedAverageNumberDilutedSharesOutstandingAdjustment to us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">Basic (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="label: WeightedAverageNumberOfSharesOutstandingBasic to us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockMember" xml:lang="en-US" id="us-gaap_CommonStockMember">Common Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockMember" xlink:to="us-gaap_CommonStockMember" xlink:title="label: CommonStockMember to us-gaap_CommonStockMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConstructionInProgressMember" xlink:label="ConstructionInProgressMember" xlink:title="ConstructionInProgressMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConstructionInProgressMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConstructionInProgressMember" xml:lang="en-US" id="us-gaap_ConstructionInProgressMember">Construction in Progress [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConstructionInProgressMember" xlink:to="us-gaap_ConstructionInProgressMember" xlink:title="label: ConstructionInProgressMember to us-gaap_ConstructionInProgressMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="PropertyPlantAndEquipmentDisclosureTextBlock" xlink:title="PropertyPlantAndEquipmentDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">PROPERTY, PLANT AND EQUIPMENT, NET</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:title="label: PropertyPlantAndEquipmentDisclosureTextBlock to us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl1">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl1" xlink:title="label: PropertyPlantAndEquipmentDisclosureTextBlock to us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentTypeDomain" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentTypeDomain">Long-Lived Tangible Asset [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:title="label: PropertyPlantAndEquipmentTypeDomain to us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_BuildingAndBuildingImprovementsMember" xml:lang="en-US" id="us-gaap_BuildingAndBuildingImprovementsMember">Buildings and Improvements [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:title="label: BuildingAndBuildingImprovementsMember to us-gaap_BuildingAndBuildingImprovementsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BuildingAndBuildingImprovementsMember1" xml:lang="en-US" id="us-gaap_BuildingAndBuildingImprovementsMember1">Buildings and Improvements [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember1" xlink:title="label: BuildingAndBuildingImprovementsMember to us-gaap_BuildingAndBuildingImprovementsMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ResearchAndDevelopmentExpense" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpense">Research and development</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense" xlink:title="label: ResearchAndDevelopmentExpense to us-gaap_ResearchAndDevelopmentExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_ResearchAndDevelopmentExpense1" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpense1">Research and development expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense1" xlink:title="label: ResearchAndDevelopmentExpense to us-gaap_ResearchAndDevelopmentExpense1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchAndDevelopmentExpense_lbl2" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpense_lbl2">Research and Development Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl2" xlink:title="label: ResearchAndDevelopmentExpense to us-gaap_ResearchAndDevelopmentExpense_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="AvailableForSaleSecuritiesDebtSecurities" xlink:title="AvailableForSaleSecuritiesDebtSecurities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xml:lang="en-US" id="us-gaap_AvailableForSaleSecuritiesDebtSecurities">Carrying Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleSecuritiesDebtSecurities" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:title="label: AvailableForSaleSecuritiesDebtSecurities to us-gaap_AvailableForSaleSecuritiesDebtSecurities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_Assets" xml:lang="en-US" id="us-gaap_Assets">Total assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets" xlink:title="label: Assets to us-gaap_Assets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Assets_lbl1" xml:lang="en-US" id="us-gaap_Assets_lbl1">Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets_lbl1" xlink:title="label: Assets to us-gaap_Assets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrentAbstract" xlink:label="AccountsReceivableNetCurrentAbstract" xlink:title="AccountsReceivableNetCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableNetCurrentAbstract" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrentAbstract">ACCOUNTS RECEIVABLE [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrentAbstract" xlink:title="label: AccountsReceivableNetCurrentAbstract to us-gaap_AccountsReceivableNetCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherLiabilitiesNoncurrent" xml:lang="en-US" id="us-gaap_OtherLiabilitiesNoncurrent">Other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:title="label: OtherLiabilitiesNoncurrent to us-gaap_OtherLiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OtherLiabilitiesNoncurrent1" xml:lang="en-US" id="us-gaap_OtherLiabilitiesNoncurrent1">Other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent1" xlink:title="label: OtherLiabilitiesNoncurrent to us-gaap_OtherLiabilitiesNoncurrent1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesNoncurrent_lbl2" xml:lang="en-US" id="us-gaap_OtherLiabilitiesNoncurrent_lbl2">Other Liabilities, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl2" xlink:title="label: OtherLiabilitiesNoncurrent to us-gaap_OtherLiabilitiesNoncurrent_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US" id="us-gaap_ConcentrationRiskByBenchmarkAxis">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:title="label: ConcentrationRiskByBenchmarkAxis to us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US" id="us-gaap_ConcentrationRiskBenchmarkDomain">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:title="label: ConcentrationRiskBenchmarkDomain to us-gaap_ConcentrationRiskBenchmarkDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:label="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="ConcentrationRisksTypesNoConcentrationPercentageAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xml:lang="en-US" id="us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract">Geographical Areas [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:to="us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="label: ConcentrationRisksTypesNoConcentrationPercentageAbstract to us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="IncomeTaxAuthorityDomain" xlink:title="IncomeTaxAuthorityDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxAuthorityDomain" xml:lang="en-US" id="us-gaap_IncomeTaxAuthorityDomain">Income Tax Authority [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxAuthorityDomain" xlink:to="us-gaap_IncomeTaxAuthorityDomain" xlink:title="label: IncomeTaxAuthorityDomain to us-gaap_IncomeTaxAuthorityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xml:lang="en-US" id="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain">Financial Instruments [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="label: TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain to us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xml:lang="en-US" id="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">SHARE-BASED COMPENSATION</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="label: DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock to us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl1" xml:lang="en-US" id="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl1">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl1" xlink:title="label: DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock to us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementTable" xml:lang="en-US" id="us-gaap_StatementTable">Statement [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementTable" xlink:to="us-gaap_StatementTable" xlink:title="label: StatementTable to us-gaap_StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesNameDomain" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesNameDomain">Antidilutive Securities, Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:title="label: AntidilutiveSecuritiesNameDomain to us-gaap_AntidilutiveSecuritiesNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AssetsAbstract" xml:lang="en-US" id="us-gaap_AssetsAbstract">ASSETS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAbstract" xlink:to="us-gaap_AssetsAbstract" xlink:title="label: AssetsAbstract to us-gaap_AssetsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsAbstract_lbl1" xml:lang="en-US" id="us-gaap_AssetsAbstract_lbl1">Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl1" xlink:title="label: AssetsAbstract to us-gaap_AssetsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementLineItems" xml:lang="en-US" id="us-gaap_StatementLineItems">Statement [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementLineItems" xlink:to="us-gaap_StatementLineItems" xlink:title="label: StatementLineItems to us-gaap_StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:label="FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:title="FairValueAssetsMeasuredOnRecurringBasisTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xml:lang="en-US" id="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock">Assets Measured at Fair Value on Recurring Basis</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:title="label: FairValueAssetsMeasuredOnRecurringBasisTextBlock to us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="OperatingLossCarryforwardsTable" xlink:title="OperatingLossCarryforwardsTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLossCarryforwardsTable" xml:lang="en-US" id="us-gaap_OperatingLossCarryforwardsTable">Operating Loss Carryforwards [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLossCarryforwardsTable" xlink:to="us-gaap_OperatingLossCarryforwardsTable" xlink:title="label: OperatingLossCarryforwardsTable to us-gaap_OperatingLossCarryforwardsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" xlink:label="SummaryOfTaxCreditCarryforwardsTextBlock" xlink:title="SummaryOfTaxCreditCarryforwardsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" xml:lang="en-US" id="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock">Tax Credit Carryforwards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SummaryOfTaxCreditCarryforwardsTextBlock" xlink:to="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" xlink:title="label: SummaryOfTaxCreditCarryforwardsTextBlock to us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock_lbl1" xml:lang="en-US" id="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock_lbl1">Summary of Tax Credit Carryforwards [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SummaryOfTaxCreditCarryforwardsTextBlock" xlink:to="us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock_lbl1" xlink:title="label: SummaryOfTaxCreditCarryforwardsTextBlock to us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="OperatingLossCarryforwardsLineItems" xlink:title="OperatingLossCarryforwardsLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLossCarryforwardsLineItems" xml:lang="en-US" id="us-gaap_OperatingLossCarryforwardsLineItems">Operating Loss Carryforwards [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="us-gaap_OperatingLossCarryforwardsLineItems" xlink:title="label: OperatingLossCarryforwardsLineItems to us-gaap_OperatingLossCarryforwardsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" xlink:label="SummaryOfOperatingLossCarryforwardsTextBlock" xlink:title="SummaryOfOperatingLossCarryforwardsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" xml:lang="en-US" id="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock">Operating Loss Carryforwards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SummaryOfOperatingLossCarryforwardsTextBlock" xlink:to="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" xlink:title="label: SummaryOfOperatingLossCarryforwardsTextBlock to us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock_lbl1" xml:lang="en-US" id="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock_lbl1">Summary of Operating Loss Carryforwards [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SummaryOfOperatingLossCarryforwardsTextBlock" xlink:to="us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock_lbl1" xlink:title="label: SummaryOfOperatingLossCarryforwardsTextBlock to us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="FairValueInputsLevel1Member" xlink:title="FairValueInputsLevel1Member" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueInputsLevel1Member" xml:lang="en-US" id="us-gaap_FairValueInputsLevel1Member">Level 1 [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueInputsLevel1Member" xlink:to="us-gaap_FairValueInputsLevel1Member" xlink:title="label: FairValueInputsLevel1Member to us-gaap_FairValueInputsLevel1Member" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="FairValueInputsLevel2Member" xlink:title="FairValueInputsLevel2Member" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueInputsLevel2Member" xml:lang="en-US" id="us-gaap_FairValueInputsLevel2Member">Level 2 [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueInputsLevel2Member" xlink:to="us-gaap_FairValueInputsLevel2Member" xlink:title="label: FairValueInputsLevel2Member to us-gaap_FairValueInputsLevel2Member" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="FairValueInputsLevel3Member" xlink:title="FairValueInputsLevel3Member" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueInputsLevel3Member" xml:lang="en-US" id="us-gaap_FairValueInputsLevel3Member">Level 3 [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member" xlink:title="label: FairValueInputsLevel3Member to us-gaap_FairValueInputsLevel3Member" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="RisksAndUncertaintiesAbstract" xlink:title="RisksAndUncertaintiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RisksAndUncertaintiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RisksAndUncertaintiesAbstract" xml:lang="en-US" id="us-gaap_RisksAndUncertaintiesAbstract">RISKS AND CONCENTRATIONS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RisksAndUncertaintiesAbstract" xlink:to="us-gaap_RisksAndUncertaintiesAbstract" xlink:title="label: RisksAndUncertaintiesAbstract to us-gaap_RisksAndUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="FairValueDisclosuresTextBlock" xlink:title="FairValueDisclosuresTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_FairValueDisclosuresTextBlock" xml:lang="en-US" id="us-gaap_FairValueDisclosuresTextBlock">FAIR VALUE MEASUREMENTS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock" xlink:title="label: FairValueDisclosuresTextBlock to us-gaap_FairValueDisclosuresTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueDisclosuresTextBlock_lbl1" xml:lang="en-US" id="us-gaap_FairValueDisclosuresTextBlock_lbl1">Fair Value Disclosures [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl1" xlink:title="label: FairValueDisclosuresTextBlock to us-gaap_FairValueDisclosuresTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="LongTermDebtByMaturityAbstract" xlink:title="LongTermDebtByMaturityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtByMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LongTermDebtByMaturityAbstract" xml:lang="en-US" id="us-gaap_LongTermDebtByMaturityAbstract">Long-term debt [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtByMaturityAbstract" xlink:title="label: LongTermDebtByMaturityAbstract to us-gaap_LongTermDebtByMaturityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongTermDebtByMaturityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongTermDebtByMaturityAbstract_lbl1" xml:lang="en-US" id="us-gaap_LongTermDebtByMaturityAbstract_lbl1">Long-Term Debt, Fiscal Year Maturity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtByMaturityAbstract_lbl1" xlink:title="label: LongTermDebtByMaturityAbstract to us-gaap_LongTermDebtByMaturityAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNetAbstract" xlink:label="DeferredTaxAssetsNetAbstract" xlink:title="DeferredTaxAssetsNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsNetAbstract" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsNetAbstract">Net Deferred Income Tax Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsNetAbstract" xlink:title="label: DeferredTaxAssetsNetAbstract to us-gaap_DeferredTaxAssetsNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xlink:label="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="PropertyPlantAndEquipmentNetByTypeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract">Property, plant and equipment [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="label: PropertyPlantAndEquipmentNetByTypeAbstract to us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract_lbl1">Property, Plant and Equipment, Net, by Type [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract_lbl1" xlink:title="label: PropertyPlantAndEquipmentNetByTypeAbstract to us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:label="ScheduleOfTreasuryStockByClassTextBlock" xlink:title="ScheduleOfTreasuryStockByClassTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfTreasuryStockByClassTextBlock">Shares Repurchase Programs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfTreasuryStockByClassTextBlock" xlink:to="us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:title="label: ScheduleOfTreasuryStockByClassTextBlock to us-gaap_ScheduleOfTreasuryStockByClassTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ClassOfTreasuryStockTable" xml:lang="en-US" id="us-gaap_ClassOfTreasuryStockTable">Class of Treasury Stock [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ClassOfTreasuryStockTable" xlink:to="us-gaap_ClassOfTreasuryStockTable" xlink:title="label: ClassOfTreasuryStockTable to us-gaap_ClassOfTreasuryStockTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EquityClassOfTreasuryStockLineItems" xml:lang="en-US" id="us-gaap_EquityClassOfTreasuryStockLineItems">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:title="label: EquityClassOfTreasuryStockLineItems to us-gaap_EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherAssetsNoncurrent" xml:lang="en-US" id="us-gaap_OtherAssetsNoncurrent">Other assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:title="label: OtherAssetsNoncurrent to us-gaap_OtherAssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_OtherAssetsNoncurrent_lbl1">Other Assets, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl1" xlink:title="label: OtherAssetsNoncurrent to us-gaap_OtherAssetsNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="OperatingExpensesAbstract" xlink:title="OperatingExpensesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingExpensesAbstract" xml:lang="en-US" id="us-gaap_OperatingExpensesAbstract">Operating expenses:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract" xlink:title="label: OperatingExpensesAbstract to us-gaap_OperatingExpensesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingExpenses" xml:lang="en-US" id="us-gaap_OperatingExpenses">Total operating expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpenses" xlink:to="us-gaap_OperatingExpenses" xlink:title="label: OperatingExpenses to us-gaap_OperatingExpenses" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpenses_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingExpenses_lbl1" xml:lang="en-US" id="us-gaap_OperatingExpenses_lbl1">Operating Expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl1" xlink:title="label: OperatingExpenses to us-gaap_OperatingExpenses_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareReconciliationAbstract" xlink:label="EarningsPerShareReconciliationAbstract" xlink:title="EarningsPerShareReconciliationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareReconciliationAbstract" xml:lang="en-US" id="us-gaap_EarningsPerShareReconciliationAbstract">Calculation of Basic and Diluted Earnings Per Share [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="us-gaap_EarningsPerShareReconciliationAbstract" xlink:title="label: EarningsPerShareReconciliationAbstract to us-gaap_EarningsPerShareReconciliationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareReconciliationAbstract_lbl1">Earnings Per Share Reconciliation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xlink:title="label: EarningsPerShareReconciliationAbstract to us-gaap_EarningsPerShareReconciliationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">Total potentially dilutive shares excluded (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">Antidilutive Securities [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareAbstract" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract">Earnings per share:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareAbstract1" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract1">EARNINGS PER SHARE [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract1" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">Outstanding Securities Excluded from Calculation of Diluted Earnings or Loss Per Share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:title="label: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock to us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl1">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl1" xlink:title="label: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock to us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xml:lang="en-US" id="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="label: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="EarningsPerSharePolicyTextBlock" xlink:title="EarningsPerSharePolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerSharePolicyTextBlock" xml:lang="en-US" id="us-gaap_EarningsPerSharePolicyTextBlock">Earnings Per Share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" xlink:title="label: EarningsPerSharePolicyTextBlock to us-gaap_EarningsPerSharePolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xml:lang="en-US" id="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">Debt Securities, Available-for-Sale [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="label: ScheduleOfAvailableForSaleSecuritiesLineItems to us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xml:lang="en-US" id="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable">Property, Plant and Equipment [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="label: ScheduleOfPropertyPlantAndEquipmentTable to us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US" id="us-gaap_CommonStockParOrStatedValuePerShare">Common stock, par value (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:title="label: CommonStockParOrStatedValuePerShare to us-gaap_CommonStockParOrStatedValuePerShare" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentByTypeAxis">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:title="label: PropertyPlantAndEquipmentByTypeAxis to us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentLineItems" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentLineItems">Property, Plant and Equipment [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:title="label: PropertyPlantAndEquipmentLineItems to us-gaap_PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:label="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xml:lang="en-US" id="us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries">Cash limit for dividends, distributions and redemption on equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:to="us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="label: AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries to us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_StockholdersEquity" xml:lang="en-US" id="us-gaap_StockholdersEquity">Total Photronics, Inc. shareholders' equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_StockholdersEquity1" xml:lang="en-US" id="us-gaap_StockholdersEquity1">Ending Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity1" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity2" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_StockholdersEquity2" xml:lang="en-US" id="us-gaap_StockholdersEquity2">Beginning Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity2" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquity_lbl3" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl3">Equity, Attributable to Parent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl3" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xml:lang="en-US" id="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">Changes in valuation allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="label: IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance to us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit">Income tax provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefit1" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit1">Income tax provision, Total</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit1" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxExpenseBenefit_lbl2" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit_lbl2">Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl2" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="ForeignCurrencyTransactionGainLossBeforeTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xml:lang="en-US" id="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">Foreign currency transactions impacts, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="label: ForeignCurrencyTransactionGainLossBeforeTax to us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="PreferredStockValue" xlink:title="PreferredStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PreferredStockValue" xml:lang="en-US" id="us-gaap_PreferredStockValue">Preferred stock, $0.01 par value, 2,000 shares authorized, none issued and outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreferredStockValue" xlink:to="us-gaap_PreferredStockValue" xlink:title="label: PreferredStockValue to us-gaap_PreferredStockValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableMember" xlink:label="AccountsReceivableMember" xlink:title="AccountsReceivableMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableMember" xml:lang="en-US" id="us-gaap_AccountsReceivableMember">Accounts Receivable [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember" xlink:title="label: AccountsReceivableMember to us-gaap_AccountsReceivableMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementEquityComponentsAxis" xml:lang="en-US" id="us-gaap_StatementEquityComponentsAxis">Equity Components [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:title="label: StatementEquityComponentsAxis to us-gaap_StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapitalMember">Additional Paid-in Capital [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:title="label: AdditionalPaidInCapitalMember to us-gaap_AdditionalPaidInCapitalMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RetainedEarningsMember" xml:lang="en-US" id="us-gaap_RetainedEarningsMember">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember" xlink:title="label: RetainedEarningsMember to us-gaap_RetainedEarningsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsMember_lbl1" xml:lang="en-US" id="us-gaap_RetainedEarningsMember_lbl1">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl1" xlink:title="label: RetainedEarningsMember to us-gaap_RetainedEarningsMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeMember">Accumulated Other Comprehensive Income (Loss) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:title="label: AccumulatedOtherComprehensiveIncomeMember to us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeMember1" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeMember1">Accumulated Other Comprehensive Income (Loss) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember1" xlink:title="label: AccumulatedOtherComprehensiveIncomeMember to us-gaap_AccumulatedOtherComprehensiveIncomeMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="AccumulatedTranslationAdjustmentMember" xlink:title="AccumulatedTranslationAdjustmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccumulatedTranslationAdjustmentMember" xml:lang="en-US" id="us-gaap_AccumulatedTranslationAdjustmentMember">Foreign Currency Translation Adjustments [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedTranslationAdjustmentMember" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember" xlink:title="label: AccumulatedTranslationAdjustmentMember to us-gaap_AccumulatedTranslationAdjustmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedTranslationAdjustmentMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedTranslationAdjustmentMember_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedTranslationAdjustmentMember_lbl1">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedTranslationAdjustmentMember" xlink:to="us-gaap_AccumulatedTranslationAdjustmentMember_lbl1" xlink:title="label: AccumulatedTranslationAdjustmentMember to us-gaap_AccumulatedTranslationAdjustmentMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EquityComponentDomain" xml:lang="en-US" id="us-gaap_EquityComponentDomain">Equity Component [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain" xlink:title="label: EquityComponentDomain to us-gaap_EquityComponentDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="CapitalExpendituresIncurredButNotYetPaid" xlink:title="CapitalExpendituresIncurredButNotYetPaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xml:lang="en-US" id="us-gaap_CapitalExpendituresIncurredButNotYetPaid">Accruals for property, plant and equipment not yet paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalExpendituresIncurredButNotYetPaid" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:title="label: CapitalExpendituresIncurredButNotYetPaid to us-gaap_CapitalExpendituresIncurredButNotYetPaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xml:lang="en-US" id="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1">Capital Expenditures Incurred but Not yet Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalExpendituresIncurredButNotYetPaid" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xlink:title="label: CapitalExpendituresIncurredButNotYetPaid to us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="EmployeeStockOptionMember" xlink:title="EmployeeStockOptionMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EmployeeStockOptionMember" xml:lang="en-US" id="us-gaap_EmployeeStockOptionMember">Stock Options [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:title="label: EmployeeStockOptionMember to us-gaap_EmployeeStockOptionMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeStockOptionMember1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeStockOptionMember1" xml:lang="en-US" id="us-gaap_EmployeeStockOptionMember1">Employee Stock Option [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember1" xlink:title="label: EmployeeStockOptionMember to us-gaap_EmployeeStockOptionMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">Cancellations, forfeitures, and adjustments (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="StockIssuedDuringPeriodValueShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation">Shares issued under equity plans</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="label: StockIssuedDuringPeriodValueShareBasedCompensation to us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl1">Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl1" xlink:title="label: StockIssuedDuringPeriodValueShareBasedCompensation to us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="StockIssuedDuringPeriodSharesShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation">Shares issued under equity plans (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="label: StockIssuedDuringPeriodSharesShareBasedCompensation to us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl1">Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl1" xlink:title="label: StockIssuedDuringPeriodSharesShareBasedCompensation to us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">Exercised (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="label: StockIssuedDuringPeriodSharesStockOptionsExercised to us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xlink:title="label: StockIssuedDuringPeriodSharesStockOptionsExercised to us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="TreasuryStockSharesAcquired" xlink:title="TreasuryStockSharesAcquired" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TreasuryStockSharesAcquired" xml:lang="en-US" id="us-gaap_TreasuryStockSharesAcquired">Purchases of treasury stock (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired" xlink:title="label: TreasuryStockSharesAcquired to us-gaap_TreasuryStockSharesAcquired" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_TreasuryStockSharesAcquired1" xml:lang="en-US" id="us-gaap_TreasuryStockSharesAcquired1">Number of additional shares repurchased (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired1" xlink:title="label: TreasuryStockSharesAcquired to us-gaap_TreasuryStockSharesAcquired1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockSharesAcquired_lbl2" xml:lang="en-US" id="us-gaap_TreasuryStockSharesAcquired_lbl2">Treasury Stock, Shares, Acquired</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired_lbl2" xlink:title="label: TreasuryStockSharesAcquired to us-gaap_TreasuryStockSharesAcquired_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="InventoryRawMaterialsNetOfReserves" xlink:title="InventoryRawMaterialsNetOfReserves" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryRawMaterialsNetOfReserves" xml:lang="en-US" id="us-gaap_InventoryRawMaterialsNetOfReserves">Raw materials</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:title="label: InventoryRawMaterialsNetOfReserves to us-gaap_InventoryRawMaterialsNetOfReserves" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureTextBlock" xlink:label="OtherLiabilitiesDisclosureTextBlock" xlink:title="OtherLiabilitiesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesDisclosureTextBlock" xml:lang="en-US" id="us-gaap_OtherLiabilitiesDisclosureTextBlock">OTHER LIABILITIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesDisclosureTextBlock" xlink:to="us-gaap_OtherLiabilitiesDisclosureTextBlock" xlink:title="label: OtherLiabilitiesDisclosureTextBlock to us-gaap_OtherLiabilitiesDisclosureTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DilutiveSecurities" xlink:label="DilutiveSecurities" xlink:title="DilutiveSecurities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DilutiveSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DilutiveSecurities" xml:lang="en-US" id="us-gaap_DilutiveSecurities">Effect of dilutive securities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DilutiveSecurities" xlink:to="us-gaap_DilutiveSecurities" xlink:title="label: DilutiveSecurities to us-gaap_DilutiveSecurities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="TreasuryStockValueAcquiredCostMethod" xlink:title="TreasuryStockValueAcquiredCostMethod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_TreasuryStockValueAcquiredCostMethod" xml:lang="en-US" id="us-gaap_TreasuryStockValueAcquiredCostMethod">Purchases of treasury stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:title="label: TreasuryStockValueAcquiredCostMethod to us-gaap_TreasuryStockValueAcquiredCostMethod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TreasuryStockValueAcquiredCostMethod1" xml:lang="en-US" id="us-gaap_TreasuryStockValueAcquiredCostMethod1">Cost of shares repurchased</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod1" xlink:title="label: TreasuryStockValueAcquiredCostMethod to us-gaap_TreasuryStockValueAcquiredCostMethod1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl2" xml:lang="en-US" id="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl2">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl2" xlink:title="label: TreasuryStockValueAcquiredCostMethod to us-gaap_TreasuryStockValueAcquiredCostMethod_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">Shares [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">Options Exercised [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract1">Stock Options [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">Shares [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract">Restricted Stock, additional disclosures [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">Expected to vest (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">Expected to vest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">Expected to vest (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:label="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:title="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xml:lang="en-US" id="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract">Effect of Dilutive Securities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:title="label: WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract to us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl1">Weighted Average Number of Shares Outstanding, Diluted, Adjustment [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl1" xlink:title="label: WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract to us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareTextBlock" xml:lang="en-US" id="us-gaap_EarningsPerShareTextBlock">EARNINGS PER SHARE</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:title="label: EarningsPerShareTextBlock to us-gaap_EarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareTextBlock_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareTextBlock_lbl1">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl1" xlink:title="label: EarningsPerShareTextBlock to us-gaap_EarningsPerShareTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProfitLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProfitLoss" xml:lang="en-US" id="us-gaap_ProfitLoss">Net income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProfitLoss" xlink:to="us-gaap_ProfitLoss" xlink:title="label: ProfitLoss to us-gaap_ProfitLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProfitLoss1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ProfitLoss1" xml:lang="en-US" id="us-gaap_ProfitLoss1">Net income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProfitLoss" xlink:to="us-gaap_ProfitLoss1" xlink:title="label: ProfitLoss to us-gaap_ProfitLoss1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="NetIncomeLossAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">Net income attributable to noncontrolling interests</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="label: NetIncomeLossAttributableToNoncontrollingInterest to us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl1">Net Income (Loss) Attributable to Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl1" xlink:title="label: NetIncomeLossAttributableToNoncontrollingInterest to us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">Weighted-average number of common shares outstanding:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="label: WeightedAverageNumberOfSharesOutstandingAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1">Weighted-average common shares outstanding [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xlink:title="label: WeightedAverageNumberOfSharesOutstandingAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="AccruedIncomeTaxesCurrent" xlink:title="AccruedIncomeTaxesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccruedIncomeTaxesCurrent" xml:lang="en-US" id="us-gaap_AccruedIncomeTaxesCurrent">Income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedIncomeTaxesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" xlink:title="label: AccruedIncomeTaxesCurrent to us-gaap_AccruedIncomeTaxesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedIncomeTaxesCurrent_lbl1" xml:lang="en-US" id="us-gaap_AccruedIncomeTaxesCurrent_lbl1">Accrued Income Taxes, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedIncomeTaxesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_lbl1" xlink:title="label: AccruedIncomeTaxesCurrent to us-gaap_AccruedIncomeTaxesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="AccruedIncomeTaxesNoncurrent" xlink:title="AccruedIncomeTaxesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedIncomeTaxesNoncurrent" xml:lang="en-US" id="us-gaap_AccruedIncomeTaxesNoncurrent">Tax payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedIncomeTaxesNoncurrent" xlink:to="us-gaap_AccruedIncomeTaxesNoncurrent" xlink:title="label: AccruedIncomeTaxesNoncurrent to us-gaap_AccruedIncomeTaxesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="DepreciationDepletionAndAmortization" xlink:title="DepreciationDepletionAndAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DepreciationDepletionAndAmortization" xml:lang="en-US" id="us-gaap_DepreciationDepletionAndAmortization">Depreciation and amortization of property, plant and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:title="label: DepreciationDepletionAndAmortization to us-gaap_DepreciationDepletionAndAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DepreciationDepletionAndAmortization_lbl1" xml:lang="en-US" id="us-gaap_DepreciationDepletionAndAmortization_lbl1">Depreciation, Depletion and Amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl1" xlink:title="label: DepreciationDepletionAndAmortization to us-gaap_DepreciationDepletionAndAmortization_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:title="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:title="label: ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock to us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl1">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl1" xlink:title="label: ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock to us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">Comprehensive income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="label: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1">Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xlink:title="label: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest">Less: comprehensive income attributable to noncontrolling interests</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="label: ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest to us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xml:lang="en-US" id="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract">Equity:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="label: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">Total equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="label: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest1" xml:lang="en-US" id="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest1">Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest1" xlink:title="label: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest2" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest2" xml:lang="en-US" id="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest2">Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest2" xlink:title="label: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl3" xml:lang="en-US" id="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl3">Equity, Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl3" xlink:title="label: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="NoncontrollingInterestMember" xlink:title="NoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NoncontrollingInterestMember" xml:lang="en-US" id="us-gaap_NoncontrollingInterestMember">Non-controlling Interests [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncontrollingInterestMember" xlink:to="us-gaap_NoncontrollingInterestMember" xlink:title="label: NoncontrollingInterestMember to us-gaap_NoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncontrollingInterestMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NoncontrollingInterestMember_lbl1" xml:lang="en-US" id="us-gaap_NoncontrollingInterestMember_lbl1">Noncontrolling Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncontrollingInterestMember" xlink:to="us-gaap_NoncontrollingInterestMember_lbl1" xlink:title="label: NoncontrollingInterestMember to us-gaap_NoncontrollingInterestMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValueAddedTaxReceivableCurrent" xlink:label="ValueAddedTaxReceivableCurrent" xlink:title="ValueAddedTaxReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ValueAddedTaxReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ValueAddedTaxReceivableCurrent" xml:lang="en-US" id="us-gaap_ValueAddedTaxReceivableCurrent">Recoverable value added taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ValueAddedTaxReceivableCurrent" xlink:to="us-gaap_ValueAddedTaxReceivableCurrent" xlink:title="label: ValueAddedTaxReceivableCurrent to us-gaap_ValueAddedTaxReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ValueAddedTaxReceivableCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ValueAddedTaxReceivableCurrent_lbl1" xml:lang="en-US" id="us-gaap_ValueAddedTaxReceivableCurrent_lbl1">Value Added Tax Receivable, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ValueAddedTaxReceivableCurrent" xlink:to="us-gaap_ValueAddedTaxReceivableCurrent_lbl1" xlink:title="label: ValueAddedTaxReceivableCurrent to us-gaap_ValueAddedTaxReceivableCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeasesAbstract" xml:lang="en-US" id="us-gaap_LeasesAbstract">LEASES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeasesAbstract" xlink:to="us-gaap_LeasesAbstract" xlink:title="label: LeasesAbstract to us-gaap_LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingencies" xml:lang="en-US" id="us-gaap_CommitmentsAndContingencies">Commitments and contingencies (Note 16)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:title="label: CommitmentsAndContingencies to us-gaap_CommitmentsAndContingencies" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US" id="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="label: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="AccruedLiabilitiesMember" xlink:title="AccruedLiabilitiesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccruedLiabilitiesMember" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesMember">Accrued Liabilities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesMember" xlink:to="us-gaap_AccruedLiabilitiesMember" xlink:title="label: AccruedLiabilitiesMember to us-gaap_AccruedLiabilitiesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedLiabilitiesMember_lbl1" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesMember_lbl1">Accrued Liabilities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesMember" xlink:to="us-gaap_AccruedLiabilitiesMember_lbl1" xlink:title="label: AccruedLiabilitiesMember to us-gaap_AccruedLiabilitiesMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsPayableCurrent" xml:lang="en-US" id="us-gaap_AccountsPayableCurrent">Accounts payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent" xlink:title="label: AccountsPayableCurrent to us-gaap_AccountsPayableCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:label="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="AccrualForTaxesOtherThanIncomeTaxesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xml:lang="en-US" id="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent">Value added and other taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:to="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="label: AccrualForTaxesOtherThanIncomeTaxesCurrent to us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent_lbl1" xml:lang="en-US" id="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent_lbl1">Accrual for Taxes Other than Income Taxes, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:to="us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent_lbl1" xlink:title="label: AccrualForTaxesOtherThanIncomeTaxesCurrent to us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesCurrent">Accrued liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:title="label: AccruedLiabilitiesCurrent to us-gaap_AccruedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AccruedLiabilitiesCurrent1" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesCurrent1">Accrued liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent1" xlink:title="label: AccruedLiabilitiesCurrent to us-gaap_AccruedLiabilitiesCurrent1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedLiabilitiesCurrent_lbl2" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesCurrent_lbl2">Accrued Liabilities, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl2" xlink:title="label: AccruedLiabilitiesCurrent to us-gaap_AccruedLiabilitiesCurrent_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedUtilitiesCurrent" xlink:label="AccruedUtilitiesCurrent" xlink:title="AccruedUtilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedUtilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedUtilitiesCurrent" xml:lang="en-US" id="us-gaap_AccruedUtilitiesCurrent">Telecommunications and utilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedUtilitiesCurrent" xlink:to="us-gaap_AccruedUtilitiesCurrent" xlink:title="label: AccruedUtilitiesCurrent to us-gaap_AccruedUtilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="EmployeeRelatedLiabilitiesCurrent" xlink:title="EmployeeRelatedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EmployeeRelatedLiabilitiesCurrent" xml:lang="en-US" id="us-gaap_EmployeeRelatedLiabilitiesCurrent">Compensation related expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:title="label: EmployeeRelatedLiabilitiesCurrent to us-gaap_EmployeeRelatedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl1" xml:lang="en-US" id="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl1">Employee-related Liabilities, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl1" xlink:title="label: EmployeeRelatedLiabilitiesCurrent to us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="OtherAccruedLiabilitiesCurrent" xlink:title="OtherAccruedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherAccruedLiabilitiesCurrent" xml:lang="en-US" id="us-gaap_OtherAccruedLiabilitiesCurrent">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:title="label: OtherAccruedLiabilitiesCurrent to us-gaap_OtherAccruedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAccruedLiabilitiesCurrent_lbl1" xml:lang="en-US" id="us-gaap_OtherAccruedLiabilitiesCurrent_lbl1">Other Accrued Liabilities, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl1" xlink:title="label: OtherAccruedLiabilitiesCurrent to us-gaap_OtherAccruedLiabilitiesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="AccruedLiabilitiesCurrentAbstract" xlink:title="AccruedLiabilitiesCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedLiabilitiesCurrentAbstract" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesCurrentAbstract">ACCRUED LIABILITIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:title="label: AccruedLiabilitiesCurrentAbstract to us-gaap_AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:label="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest">Other comprehensive income (loss) attributable to noncontrolling interests</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="label: OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest to us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest_lbl1">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest_lbl1" xlink:title="label: OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest to us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">Share-based compensation expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xml:lang="en-US" id="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">Proceeds from share-based arrangements</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="label: ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions to us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">Income before income tax provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:label="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:title="PrepaidExpenseAndOtherAssetsCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xml:lang="en-US" id="us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract">OTHER CURRENT ASSETS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:title="label: PrepaidExpenseAndOtherAssetsCurrentAbstract to us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="NetIncomeLossAttributableToParentDiluted" xlink:title="NetIncomeLossAttributableToParentDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetIncomeLossAttributableToParentDiluted" xml:lang="en-US" id="us-gaap_NetIncomeLossAttributableToParentDiluted">Earnings used for diluted earnings per share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAttributableToParentDiluted" xlink:to="us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:title="label: NetIncomeLossAttributableToParentDiluted to us-gaap_NetIncomeLossAttributableToParentDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl1" xml:lang="en-US" id="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl1">Net Income (Loss) Attributable to Parent, Diluted</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAttributableToParentDiluted" xlink:to="us-gaap_NetIncomeLossAttributableToParentDiluted_lbl1" xlink:title="label: NetIncomeLossAttributableToParentDiluted to us-gaap_NetIncomeLossAttributableToParentDiluted_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="AssetsFairValueDisclosure" xlink:title="AssetsFairValueDisclosure" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsFairValueDisclosure" xml:lang="en-US" id="us-gaap_AssetsFairValueDisclosure">Assets, fair value disclosure</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsFairValueDisclosure" xlink:to="us-gaap_AssetsFairValueDisclosure" xlink:title="label: AssetsFairValueDisclosure to us-gaap_AssetsFairValueDisclosure" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncurrentAssets" xlink:label="NoncurrentAssets" xlink:title="NoncurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NoncurrentAssets" xml:lang="en-US" id="us-gaap_NoncurrentAssets">Long-lived Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncurrentAssets" xlink:to="us-gaap_NoncurrentAssets" xlink:title="label: NoncurrentAssets to us-gaap_NoncurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncurrentAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NoncurrentAssets_lbl1" xml:lang="en-US" id="us-gaap_NoncurrentAssets_lbl1">Long-Lived Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncurrentAssets" xlink:to="us-gaap_NoncurrentAssets_lbl1" xlink:title="label: NoncurrentAssets to us-gaap_NoncurrentAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xml:lang="en-US" id="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="label: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsMiscellaneousCurrent" xlink:label="OtherAssetsMiscellaneousCurrent" xlink:title="OtherAssetsMiscellaneousCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsMiscellaneousCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_OtherAssetsMiscellaneousCurrent" xml:lang="en-US" id="us-gaap_OtherAssetsMiscellaneousCurrent">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsMiscellaneousCurrent" xlink:to="us-gaap_OtherAssetsMiscellaneousCurrent" xlink:title="label: OtherAssetsMiscellaneousCurrent to us-gaap_OtherAssetsMiscellaneousCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsMiscellaneousCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsMiscellaneousCurrent_lbl1" xml:lang="en-US" id="us-gaap_OtherAssetsMiscellaneousCurrent_lbl1">Other Assets, Miscellaneous, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsMiscellaneousCurrent" xlink:to="us-gaap_OtherAssetsMiscellaneousCurrent_lbl1" xlink:title="label: OtherAssetsMiscellaneousCurrent to us-gaap_OtherAssetsMiscellaneousCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSundryLiabilitiesNoncurrent" xlink:label="OtherSundryLiabilitiesNoncurrent" xlink:title="OtherSundryLiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherSundryLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherSundryLiabilitiesNoncurrent" xml:lang="en-US" id="us-gaap_OtherSundryLiabilitiesNoncurrent">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherSundryLiabilitiesNoncurrent" xlink:to="us-gaap_OtherSundryLiabilitiesNoncurrent" xlink:title="label: OtherSundryLiabilitiesNoncurrent to us-gaap_OtherSundryLiabilitiesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="FairValueMeasurementFrequencyDomain" xlink:title="FairValueMeasurementFrequencyDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueMeasurementFrequencyDomain" xml:lang="en-US" id="us-gaap_FairValueMeasurementFrequencyDomain">Measurement Frequency [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementFrequencyDomain" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain" xlink:title="label: FairValueMeasurementFrequencyDomain to us-gaap_FairValueMeasurementFrequencyDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="FairValueMeasurementsFairValueHierarchyDomain" xlink:title="FairValueMeasurementsFairValueHierarchyDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xml:lang="en-US" id="us-gaap_FairValueMeasurementsFairValueHierarchyDomain">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:title="label: FairValueMeasurementsFairValueHierarchyDomain to us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="FairValueMeasurementsRecurringMember" xlink:title="FairValueMeasurementsRecurringMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementsRecurringMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueMeasurementsRecurringMember" xml:lang="en-US" id="us-gaap_FairValueMeasurementsRecurringMember">Fair Value, Recurring [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementsRecurringMember" xlink:to="us-gaap_FairValueMeasurementsRecurringMember" xlink:title="label: FairValueMeasurementsRecurringMember to us-gaap_FairValueMeasurementsRecurringMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xlink:label="VariableInterestEntityMeasureOfActivityAbstract" xlink:title="VariableInterestEntityMeasureOfActivityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xml:lang="en-US" id="us-gaap_VariableInterestEntityMeasureOfActivityAbstract">Net Income (Loss) from Operations [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityMeasureOfActivityAbstract" xlink:to="us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xlink:title="label: VariableInterestEntityMeasureOfActivityAbstract to us-gaap_VariableInterestEntityMeasureOfActivityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockRetiredCostMethodAmount" xlink:label="TreasuryStockRetiredCostMethodAmount" xlink:title="TreasuryStockRetiredCostMethodAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockRetiredCostMethodAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_TreasuryStockRetiredCostMethodAmount" xml:lang="en-US" id="us-gaap_TreasuryStockRetiredCostMethodAmount">Retirement of treasury stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockRetiredCostMethodAmount" xlink:to="us-gaap_TreasuryStockRetiredCostMethodAmount" xlink:title="label: TreasuryStockRetiredCostMethodAmount to us-gaap_TreasuryStockRetiredCostMethodAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockRetiredCostMethodAmount_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockRetiredCostMethodAmount_lbl1" xml:lang="en-US" id="us-gaap_TreasuryStockRetiredCostMethodAmount_lbl1">Treasury Stock, Retired, Cost Method, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockRetiredCostMethodAmount" xlink:to="us-gaap_TreasuryStockRetiredCostMethodAmount_lbl1" xlink:title="label: TreasuryStockRetiredCostMethodAmount to us-gaap_TreasuryStockRetiredCostMethodAmount_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:label="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xml:lang="en-US" id="us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract">Share Repurchase Program [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="label: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities">Accounts payable, accrued liabilities and other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="label: IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities to us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities_lbl1">Increase (Decrease) in Accounts Payable and Other Operating Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities_lbl1" xlink:title="label: IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities to us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="UnbilledReceivablesCurrent" xlink:title="UnbilledReceivablesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnbilledReceivablesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_UnbilledReceivablesCurrent" xml:lang="en-US" id="us-gaap_UnbilledReceivablesCurrent">Unbilled Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnbilledReceivablesCurrent" xlink:to="us-gaap_UnbilledReceivablesCurrent" xlink:title="label: UnbilledReceivablesCurrent to us-gaap_UnbilledReceivablesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UnbilledReceivablesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UnbilledReceivablesCurrent_lbl1" xml:lang="en-US" id="us-gaap_UnbilledReceivablesCurrent_lbl1">Unbilled Receivables, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnbilledReceivablesCurrent" xlink:to="us-gaap_UnbilledReceivablesCurrent_lbl1" xlink:title="label: UnbilledReceivablesCurrent to us-gaap_UnbilledReceivablesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US" id="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">Basis of Presentation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="label: BasisOfPresentationAndSignificantAccountingPoliciesTextBlock to us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xml:lang="en-US" id="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">PDMCX JOINT VENTURE [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="label: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="SharesOutstanding" xlink:title="SharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_SharesOutstanding" xml:lang="en-US" id="us-gaap_SharesOutstanding">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesOutstanding" xlink:to="us-gaap_SharesOutstanding" xlink:title="label: SharesOutstanding to us-gaap_SharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesOutstanding1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_SharesOutstanding1" xml:lang="en-US" id="us-gaap_SharesOutstanding1">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesOutstanding" xlink:to="us-gaap_SharesOutstanding1" xlink:title="label: SharesOutstanding to us-gaap_SharesOutstanding1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesOutstanding_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharesOutstanding_lbl2" xml:lang="en-US" id="us-gaap_SharesOutstanding_lbl2">Shares, Outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl2" xlink:title="label: SharesOutstanding to us-gaap_SharesOutstanding_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:title="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xml:lang="en-US" id="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock">ACCRUED LIABILITIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:title="label: AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock to us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl1" xml:lang="en-US" id="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl1">Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl1" xlink:title="label: AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock to us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xlink:label="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="RepaymentsOfDebtAndCapitalLeaseObligations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xml:lang="en-US" id="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations">Repayments of debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:to="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="label: RepaymentsOfDebtAndCapitalLeaseObligations to us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations_lbl1" xml:lang="en-US" id="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations_lbl1">Repayments of Debt and Lease Obligation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:to="us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations_lbl1" xlink:title="label: RepaymentsOfDebtAndCapitalLeaseObligations to us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="FairValueByFairValueHierarchyLevelAxis" xlink:title="FairValueByFairValueHierarchyLevelAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueByFairValueHierarchyLevelAxis" xml:lang="en-US" id="us-gaap_FairValueByFairValueHierarchyLevelAxis">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:title="label: FairValueByFairValueHierarchyLevelAxis to us-gaap_FairValueByFairValueHierarchyLevelAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="FairValueByMeasurementFrequencyAxis" xlink:title="FairValueByMeasurementFrequencyAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueByMeasurementFrequencyAxis" xml:lang="en-US" id="us-gaap_FairValueByMeasurementFrequencyAxis">Measurement Frequency [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:title="label: FairValueByMeasurementFrequencyAxis to us-gaap_FairValueByMeasurementFrequencyAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:title="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">Net Deferred Income Tax Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:title="label: ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock to us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:title="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">Income Tax Provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:title="label: ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock to us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:title="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">Income Tax Rate Reconciliation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:title="label: ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock to us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:title="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">Income Before Income Tax Provision for Domestic and Foreign</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:to="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:title="label: ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock to us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="CommitmentsAndContingenciesDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureAbstract">COMMITMENTS AND CONTINGENCIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:title="label: CommitmentsAndContingenciesDisclosureAbstract to us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureAbstract">INCOME TAXES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract" xlink:title="label: IncomeTaxDisclosureAbstract to us-gaap_IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="FairValueDisclosuresAbstract" xlink:title="FairValueDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueDisclosuresAbstract" xml:lang="en-US" id="us-gaap_FairValueDisclosuresAbstract">FAIR VALUE MEASUREMENTS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresAbstract" xlink:title="label: FairValueDisclosuresAbstract to us-gaap_FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryDisclosureAbstract" xml:lang="en-US" id="us-gaap_InventoryDisclosureAbstract">INVENTORIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract" xlink:title="label: InventoryDisclosureAbstract to us-gaap_InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureAbstract" xml:lang="en-US" id="us-gaap_DebtDisclosureAbstract">DEBT [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract" xlink:title="label: DebtDisclosureAbstract to us-gaap_DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="AvailableForSaleDebtSecuritiesAmortizedCostBasis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xml:lang="en-US" id="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis">Amortized cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="label: AvailableForSaleDebtSecuritiesAmortizedCostBasis to us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl1" xml:lang="en-US" id="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl1">Debt Securities, Available-for-Sale, Amortized Cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl1" xlink:title="label: AvailableForSaleDebtSecuritiesAmortizedCostBasis to us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:label="OtherLiabilitiesDisclosureAbstract" xlink:title="OtherLiabilitiesDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesDisclosureAbstract" xml:lang="en-US" id="us-gaap_OtherLiabilitiesDisclosureAbstract">OTHER LIABILITIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:title="label: OtherLiabilitiesDisclosureAbstract to us-gaap_OtherLiabilitiesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="CompensationAndRetirementDisclosureAbstract" xlink:title="CompensationAndRetirementDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CompensationAndRetirementDisclosureAbstract" xml:lang="en-US" id="us-gaap_CompensationAndRetirementDisclosureAbstract">EMPLOYEE RETIREMENT PLANS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:title="label: CompensationAndRetirementDisclosureAbstract to us-gaap_CompensationAndRetirementDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">Restricted Stock Awards Activity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:title="label: ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock to us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock">Additional Information on Restricted Stock Awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock">Additional Information on Stock Option Awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:title="label: ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock to us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">Stock Options Activity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:title="label: ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock to us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="TreasuryStockTextBlock" xlink:title="TreasuryStockTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TreasuryStockTextBlock" xml:lang="en-US" id="us-gaap_TreasuryStockTextBlock">SHARE REPURCHASE PROGRAMS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockTextBlock" xlink:to="us-gaap_TreasuryStockTextBlock" xlink:title="label: TreasuryStockTextBlock to us-gaap_TreasuryStockTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockTextBlock_lbl1" xml:lang="en-US" id="us-gaap_TreasuryStockTextBlock_lbl1">Treasury Stock [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockTextBlock" xlink:to="us-gaap_TreasuryStockTextBlock_lbl1" xlink:title="label: TreasuryStockTextBlock to us-gaap_TreasuryStockTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:label="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:title="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock">CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:to="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:title="label: OtherComprehensiveIncomeNoncontrollingInterestTextBlock to us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock_lbl1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock_lbl1">Other Comprehensive Income, Noncontrolling Interest [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:to="us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock_lbl1" xlink:title="label: OtherComprehensiveIncomeNoncontrollingInterestTextBlock to us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xml:lang="en-US" id="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">SHARE-BASED COMPENSATION [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="label: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="UseOfEstimates" xlink:title="UseOfEstimates" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UseOfEstimates" xml:lang="en-US" id="us-gaap_UseOfEstimates">Estimates and Assumptions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UseOfEstimates" xlink:to="us-gaap_UseOfEstimates" xlink:title="label: UseOfEstimates to us-gaap_UseOfEstimates" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:title="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">Changes in Accumulated Other Comprehensive (Loss) Income by Component</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:title="label: ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock to us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="ScheduleOfDebtTableTextBlock" xlink:title="ScheduleOfDebtTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfDebtTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfDebtTableTextBlock">Long-term Debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock" xlink:title="label: ScheduleOfDebtTableTextBlock to us-gaap_ScheduleOfDebtTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfDebtTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfDebtTableTextBlock_lbl1">Schedule of Debt [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock_lbl1" xlink:title="label: ScheduleOfDebtTableTextBlock to us-gaap_ScheduleOfDebtTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="AssetsFairValueDisclosureAbstract" xlink:title="AssetsFairValueDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AssetsFairValueDisclosureAbstract" xml:lang="en-US" id="us-gaap_AssetsFairValueDisclosureAbstract">Fair Value, Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsFairValueDisclosureAbstract" xlink:to="us-gaap_AssetsFairValueDisclosureAbstract" xlink:title="label: AssetsFairValueDisclosureAbstract to us-gaap_AssetsFairValueDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsFairValueDisclosureAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsFairValueDisclosureAbstract_lbl1" xml:lang="en-US" id="us-gaap_AssetsFairValueDisclosureAbstract_lbl1">Assets, Fair Value Disclosure [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsFairValueDisclosureAbstract" xlink:to="us-gaap_AssetsFairValueDisclosureAbstract_lbl1" xlink:title="label: AssetsFairValueDisclosureAbstract to us-gaap_AssetsFairValueDisclosureAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="ResearchAndDevelopmentExpenseMember" xlink:title="ResearchAndDevelopmentExpenseMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchAndDevelopmentExpenseMember" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpenseMember">Research and Development [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpenseMember" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember" xlink:title="label: ResearchAndDevelopmentExpenseMember to us-gaap_ResearchAndDevelopmentExpenseMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xml:lang="en-US" id="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments">Proceeds from maturities of short-term investments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:to="us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="label: ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments to us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountingPoliciesAbstract" xml:lang="en-US" id="us-gaap_AccountingPoliciesAbstract">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:title="label: AccountingPoliciesAbstract to us-gaap_AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="RelatedPartyTransactionsAbstract" xlink:title="RelatedPartyTransactionsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RelatedPartyTransactionsAbstract" xml:lang="en-US" id="us-gaap_RelatedPartyTransactionsAbstract">RELATED PARTY TRANSACTIONS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsAbstract" xlink:title="label: RelatedPartyTransactionsAbstract to us-gaap_RelatedPartyTransactionsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_DebtLongtermAndShorttermCombinedAmount" xml:lang="en-US" id="us-gaap_DebtLongtermAndShorttermCombinedAmount">Total debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtLongtermAndShorttermCombinedAmount" xlink:to="us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:title="label: DebtLongtermAndShorttermCombinedAmount to us-gaap_DebtLongtermAndShorttermCombinedAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtLongtermAndShorttermCombinedAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtLongtermAndShorttermCombinedAmount1" xml:lang="en-US" id="us-gaap_DebtLongtermAndShorttermCombinedAmount1">Amount outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtLongtermAndShorttermCombinedAmount" xlink:to="us-gaap_DebtLongtermAndShorttermCombinedAmount1" xlink:title="label: DebtLongtermAndShorttermCombinedAmount to us-gaap_DebtLongtermAndShorttermCombinedAmount1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidAbstract" xlink:label="InterestPaidAbstract" xlink:title="InterestPaidAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestPaidAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InterestPaidAbstract" xml:lang="en-US" id="us-gaap_InterestPaidAbstract">Interest Paid [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestPaidAbstract" xlink:to="us-gaap_InterestPaidAbstract" xlink:title="label: InterestPaidAbstract to us-gaap_InterestPaidAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestPaidAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InterestPaidAbstract_lbl1" xml:lang="en-US" id="us-gaap_InterestPaidAbstract_lbl1">Interest Paid, Including Capitalized Interest, Operating and Investing Activities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestPaidAbstract" xlink:to="us-gaap_InterestPaidAbstract_lbl1" xlink:title="label: InterestPaidAbstract to us-gaap_InterestPaidAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherCurrentAssets">Other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherCurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:title="label: IncreaseDecreaseInOtherCurrentAssets to us-gaap_IncreaseDecreaseInOtherCurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1">Increase (Decrease) in Other Current Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherCurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xlink:title="label: IncreaseDecreaseInOtherCurrentAssets to us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="IncomeTaxAuthorityAxis" xlink:title="IncomeTaxAuthorityAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxAuthorityAxis" xml:lang="en-US" id="us-gaap_IncomeTaxAuthorityAxis">Income Tax Authority [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityAxis" xlink:title="label: IncomeTaxAuthorityAxis to us-gaap_IncomeTaxAuthorityAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">Granted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">Calculation of Basic and Diluted Earnings Per Share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="label: ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock to us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xlink:title="label: ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock to us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xml:lang="en-US" id="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember">Cash and Cash Equivalents [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="label: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">Exercisable at end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRecognitionAbstract" xlink:label="RevenueRecognitionAbstract" xlink:title="RevenueRecognitionAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRecognitionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRecognitionAbstract" xml:lang="en-US" id="us-gaap_RevenueRecognitionAbstract">Revenue Recognition [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRecognitionAbstract" xlink:to="us-gaap_RevenueRecognitionAbstract" xlink:title="label: RevenueRecognitionAbstract to us-gaap_RevenueRecognitionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="DefinedContributionPlanEmployerMatchingContributionPercent" xlink:title="DefinedContributionPlanEmployerMatchingContributionPercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xml:lang="en-US" id="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent">Maximum percentage of employees' gross pay that Company will match</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:title="label: DefinedContributionPlanEmployerMatchingContributionPercent to us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl1" xml:lang="en-US" id="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl1">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl1" xlink:title="label: DefinedContributionPlanEmployerMatchingContributionPercent to us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentAssetsTextBlock" xlink:label="OtherCurrentAssetsTextBlock" xlink:title="OtherCurrentAssetsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherCurrentAssetsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherCurrentAssetsTextBlock" xml:lang="en-US" id="us-gaap_OtherCurrentAssetsTextBlock">OTHER CURRENT ASSETS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCurrentAssetsTextBlock" xlink:to="us-gaap_OtherCurrentAssetsTextBlock" xlink:title="label: OtherCurrentAssetsTextBlock to us-gaap_OtherCurrentAssetsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherCurrentAssetsTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherCurrentAssetsTextBlock_lbl1" xml:lang="en-US" id="us-gaap_OtherCurrentAssetsTextBlock_lbl1">Other Current Assets [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCurrentAssetsTextBlock" xlink:to="us-gaap_OtherCurrentAssetsTextBlock_lbl1" xlink:title="label: OtherCurrentAssetsTextBlock to us-gaap_OtherCurrentAssetsTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:label="ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:title="ScheduleOfOtherCurrentAssetsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock">Other Current Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:title="label: ScheduleOfOtherCurrentAssetsTableTextBlock to us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock_lbl1">Schedule of Other Current Assets [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock_lbl1" xlink:title="label: ScheduleOfOtherCurrentAssetsTableTextBlock to us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">Weighted-Average Fair Value at Grant Date [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">Cancelled (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:label="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:title="DeferredTaxAssetsNetOfValuationAllowanceAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract">Deferred Income Tax Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:title="label: DeferredTaxAssetsNetOfValuationAllowanceAbstract to us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">Compensation cost not yet recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl1" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl1">Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">Compensation cost not yet recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="FinancialInstrumentAxis" xlink:title="FinancialInstrumentAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinancialInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinancialInstrumentAxis" xml:lang="en-US" id="us-gaap_FinancialInstrumentAxis">Financial Instrument [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinancialInstrumentAxis" xlink:to="us-gaap_FinancialInstrumentAxis" xlink:title="label: FinancialInstrumentAxis to us-gaap_FinancialInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">Weighted-Average Exercise Price [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">Granted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl1">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl1" xlink:title="label: ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">Exercised (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="label: ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice to us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract">Estimated Expenses Not Yet Incurred [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BalanceSheetLocationAxis" xml:lang="en-US" id="us-gaap_BalanceSheetLocationAxis">Statement of Financial Position Location, Balance [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:title="label: BalanceSheetLocationAxis to us-gaap_BalanceSheetLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInSecondYear" xlink:label="ContractualObligationDueInSecondYear" xlink:title="ContractualObligationDueInSecondYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInSecondYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueInSecondYear" xml:lang="en-US" id="us-gaap_ContractualObligationDueInSecondYear">2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInSecondYear" xlink:to="us-gaap_ContractualObligationDueInSecondYear" xlink:title="label: ContractualObligationDueInSecondYear to us-gaap_ContractualObligationDueInSecondYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInSecondYear_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueInSecondYear_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueInSecondYear_lbl1">Contractual Obligation, to be Paid, Year Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInSecondYear" xlink:to="us-gaap_ContractualObligationDueInSecondYear_lbl1" xlink:title="label: ContractualObligationDueInSecondYear to us-gaap_ContractualObligationDueInSecondYear_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInThirdYear" xlink:label="ContractualObligationDueInThirdYear" xlink:title="ContractualObligationDueInThirdYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInThirdYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueInThirdYear" xml:lang="en-US" id="us-gaap_ContractualObligationDueInThirdYear">2027</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInThirdYear" xlink:to="us-gaap_ContractualObligationDueInThirdYear" xlink:title="label: ContractualObligationDueInThirdYear to us-gaap_ContractualObligationDueInThirdYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInThirdYear_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueInThirdYear_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueInThirdYear_lbl1">Contractual Obligation, to be Paid, Year Three</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInThirdYear" xlink:to="us-gaap_ContractualObligationDueInThirdYear_lbl1" xlink:title="label: ContractualObligationDueInThirdYear to us-gaap_ContractualObligationDueInThirdYear_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFourthYear" xlink:label="ContractualObligationDueInFourthYear" xlink:title="ContractualObligationDueInFourthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInFourthYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueInFourthYear" xml:lang="en-US" id="us-gaap_ContractualObligationDueInFourthYear">2028</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInFourthYear" xlink:to="us-gaap_ContractualObligationDueInFourthYear" xlink:title="label: ContractualObligationDueInFourthYear to us-gaap_ContractualObligationDueInFourthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInFourthYear_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueInFourthYear_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueInFourthYear_lbl1">Contractual Obligation, to be Paid, Year Four</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInFourthYear" xlink:to="us-gaap_ContractualObligationDueInFourthYear_lbl1" xlink:title="label: ContractualObligationDueInFourthYear to us-gaap_ContractualObligationDueInFourthYear_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFifthYear" xlink:label="ContractualObligationDueInFifthYear" xlink:title="ContractualObligationDueInFifthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInFifthYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueInFifthYear" xml:lang="en-US" id="us-gaap_ContractualObligationDueInFifthYear">2029</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInFifthYear" xlink:to="us-gaap_ContractualObligationDueInFifthYear" xlink:title="label: ContractualObligationDueInFifthYear to us-gaap_ContractualObligationDueInFifthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInFifthYear_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueInFifthYear_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueInFifthYear_lbl1">Contractual Obligation, to be Paid, Year Five</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInFifthYear" xlink:to="us-gaap_ContractualObligationDueInFifthYear_lbl1" xlink:title="label: ContractualObligationDueInFifthYear to us-gaap_ContractualObligationDueInFifthYear_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueAfterFifthYear" xlink:label="ContractualObligationDueAfterFifthYear" xlink:title="ContractualObligationDueAfterFifthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueAfterFifthYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueAfterFifthYear" xml:lang="en-US" id="us-gaap_ContractualObligationDueAfterFifthYear">Thereafter</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueAfterFifthYear" xlink:to="us-gaap_ContractualObligationDueAfterFifthYear" xlink:title="label: ContractualObligationDueAfterFifthYear to us-gaap_ContractualObligationDueAfterFifthYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueAfterFifthYear_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueAfterFifthYear_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueAfterFifthYear_lbl1">Contractual Obligation, to be Paid, after Year Five</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueAfterFifthYear" xlink:to="us-gaap_ContractualObligationDueAfterFifthYear_lbl1" xlink:title="label: ContractualObligationDueAfterFifthYear to us-gaap_ContractualObligationDueAfterFifthYear_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligation" xlink:label="ContractualObligation" xlink:title="ContractualObligation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ContractualObligation" xml:lang="en-US" id="us-gaap_ContractualObligation">Total</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligation" xlink:to="us-gaap_ContractualObligation" xlink:title="label: ContractualObligation to us-gaap_ContractualObligation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligation_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligation_lbl1">Contractual Obligation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligation" xlink:to="us-gaap_ContractualObligation_lbl1" xlink:title="label: ContractualObligation to us-gaap_ContractualObligation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AwardTypeAxis" xml:lang="en-US" id="us-gaap_AwardTypeAxis">Award Type [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis" xlink:title="label: AwardTypeAxis to us-gaap_AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="CashAndCashEquivalentsAxis" xlink:title="CashAndCashEquivalentsAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsAxis" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAxis">Cash and Cash Equivalents [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAxis" xlink:to="us-gaap_CashAndCashEquivalentsAxis" xlink:title="label: CashAndCashEquivalentsAxis to us-gaap_CashAndCashEquivalentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="IncomeStatementLocationAxis" xlink:title="IncomeStatementLocationAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeStatementLocationAxis" xml:lang="en-US" id="us-gaap_IncomeStatementLocationAxis">Statement of Income Location, Balance [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:title="label: IncomeStatementLocationAxis to us-gaap_IncomeStatementLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="IncomeStatementLocationDomain" xlink:title="IncomeStatementLocationDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeStatementLocationDomain" xml:lang="en-US" id="us-gaap_IncomeStatementLocationDomain">Statement of Income Location, Balance [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:title="label: IncomeStatementLocationDomain to us-gaap_IncomeStatementLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized">Additional shares available for issuance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:title="NewAccountingPronouncementsPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xml:lang="en-US" id="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">Recent Accounting Pronouncements</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:title="label: NewAccountingPronouncementsPolicyPolicyTextBlock to us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl1">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl1" xlink:title="label: NewAccountingPronouncementsPolicyPolicyTextBlock to us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="DeferredTaxAssetsPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment">Property, plant and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="label: DeferredTaxAssetsPropertyPlantAndEquipment to us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_lbl1">Deferred Tax Assets, Property, Plant and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_lbl1" xlink:title="label: DeferredTaxAssetsPropertyPlantAndEquipment to us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentUsefulLife" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentUsefulLife">Estimated useful lives</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:title="label: PropertyPlantAndEquipmentUsefulLife to us-gaap_PropertyPlantAndEquipmentUsefulLife" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl1">Property, Plant and Equipment, Useful Life</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl1" xlink:title="label: PropertyPlantAndEquipmentUsefulLife to us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">Outstanding at end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">Exercisable at end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationFiscalYearMaturityAbstract" xlink:label="ContractualObligationFiscalYearMaturityAbstract" xlink:title="ContractualObligationFiscalYearMaturityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationFiscalYearMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationFiscalYearMaturityAbstract" xml:lang="en-US" id="us-gaap_ContractualObligationFiscalYearMaturityAbstract">Unrecognized Commitments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="us-gaap_ContractualObligationFiscalYearMaturityAbstract" xlink:title="label: ContractualObligationFiscalYearMaturityAbstract to us-gaap_ContractualObligationFiscalYearMaturityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">Award vesting period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">Weighted-average amortization period (in years)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl1" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl1">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="LineOfCreditFacilityExpirationDate1" xlink:title="LineOfCreditFacilityExpirationDate1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityExpirationDate1" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityExpirationDate1">Expiration date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityExpirationDate1" xlink:to="us-gaap_LineOfCreditFacilityExpirationDate1" xlink:title="label: LineOfCreditFacilityExpirationDate1 to us-gaap_LineOfCreditFacilityExpirationDate1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent">Percent of market price that participants pay for shares subscribed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="OtherCurrentAssetsMember" xlink:title="OtherCurrentAssetsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherCurrentAssetsMember" xml:lang="en-US" id="us-gaap_OtherCurrentAssetsMember">Other Current Assets [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCurrentAssetsMember" xlink:to="us-gaap_OtherCurrentAssetsMember" xlink:title="label: OtherCurrentAssetsMember to us-gaap_OtherCurrentAssetsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="SellingGeneralAndAdministrativeExpensesMember" xlink:title="SellingGeneralAndAdministrativeExpensesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xml:lang="en-US" id="us-gaap_SellingGeneralAndAdministrativeExpensesMember">Selling, General and Administrative [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SellingGeneralAndAdministrativeExpensesMember" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:title="label: SellingGeneralAndAdministrativeExpensesMember to us-gaap_SellingGeneralAndAdministrativeExpensesMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardExpirationDate" xlink:label="TaxCreditCarryforwardExpirationDate" xlink:title="TaxCreditCarryforwardExpirationDate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardExpirationDate" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_TaxCreditCarryforwardExpirationDate" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardExpirationDate">Expiration period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardExpirationDate" xlink:to="us-gaap_TaxCreditCarryforwardExpirationDate" xlink:title="label: TaxCreditCarryforwardExpirationDate to us-gaap_TaxCreditCarryforwardExpirationDate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxCreditCarryforwardExpirationDate_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TaxCreditCarryforwardExpirationDate_lbl1" xml:lang="en-US" id="us-gaap_TaxCreditCarryforwardExpirationDate_lbl1">Tax Credit Carryforward, Expiration Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardExpirationDate" xlink:to="us-gaap_TaxCreditCarryforwardExpirationDate_lbl1" xlink:title="label: TaxCreditCarryforwardExpirationDate to us-gaap_TaxCreditCarryforwardExpirationDate_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:label="ContractualObligationDueInNextTwelveMonths" xlink:title="ContractualObligationDueInNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractualObligationDueInNextTwelveMonths" xml:lang="en-US" id="us-gaap_ContractualObligationDueInNextTwelveMonths">2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInNextTwelveMonths" xlink:to="us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:title="label: ContractualObligationDueInNextTwelveMonths to us-gaap_ContractualObligationDueInNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractualObligationDueInNextTwelveMonths_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractualObligationDueInNextTwelveMonths_lbl1" xml:lang="en-US" id="us-gaap_ContractualObligationDueInNextTwelveMonths_lbl1">Contractual Obligation, to be Paid, Year One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationDueInNextTwelveMonths" xlink:to="us-gaap_ContractualObligationDueInNextTwelveMonths_lbl1" xlink:title="label: ContractualObligationDueInNextTwelveMonths to us-gaap_ContractualObligationDueInNextTwelveMonths_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:title="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">Reconciliation of Beginning and Ending Amounts of Unrecognized Tax Benefits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:title="label: ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock to us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US" id="us-gaap_ConcentrationRiskPercentage1">Customer's percentage of net accounts receivable/revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:title="label: ConcentrationRiskPercentage1 to us-gaap_ConcentrationRiskPercentage1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCollateralAmount" xlink:label="DebtInstrumentCollateralAmount" xlink:title="DebtInstrumentCollateralAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCollateralAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentCollateralAmount" xml:lang="en-US" id="us-gaap_DebtInstrumentCollateralAmount">Loan collateral (carrying amount)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentCollateralAmount" xlink:to="us-gaap_DebtInstrumentCollateralAmount" xlink:title="label: DebtInstrumentCollateralAmount to us-gaap_DebtInstrumentCollateralAmount" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">Foreign currency translation adjustments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="label: OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax to us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="OtherComprehensiveIncomeLossNetOfTax" xlink:title="OtherComprehensiveIncomeLossNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTax">Other comprehensive income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:title="label: OtherComprehensiveIncomeLossNetOfTax to us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossNetOfTax1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossNetOfTax1">Net other comprehensive income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax1" xlink:title="label: OtherComprehensiveIncomeLossNetOfTax to us-gaap_OtherComprehensiveIncomeLossNetOfTax1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="FairValueMeasurementPolicyPolicyTextBlock" xlink:title="FairValueMeasurementPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xml:lang="en-US" id="us-gaap_FairValueMeasurementPolicyPolicyTextBlock">Fair Value Financial Instruments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:title="label: FairValueMeasurementPolicyPolicyTextBlock to us-gaap_FairValueMeasurementPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl1">Fair Value Measurement, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl1" xlink:title="label: FairValueMeasurementPolicyPolicyTextBlock to us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BalanceSheetLocationDomain" xml:lang="en-US" id="us-gaap_BalanceSheetLocationDomain">Statement of Financial Position Location, Balance [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:title="label: BalanceSheetLocationDomain to us-gaap_BalanceSheetLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesMember" xlink:label="OtherLiabilitiesMember" xlink:title="OtherLiabilitiesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesMember" xml:lang="en-US" id="us-gaap_OtherLiabilitiesMember">Other Liabilities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesMember" xlink:to="us-gaap_OtherLiabilitiesMember" xlink:title="label: OtherLiabilitiesMember to us-gaap_OtherLiabilitiesMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="CostOfSalesMember" xlink:title="CostOfSalesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfSalesMember" xml:lang="en-US" id="us-gaap_CostOfSalesMember">Cost of Goods Sold [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfSalesMember" xlink:to="us-gaap_CostOfSalesMember" xlink:title="label: CostOfSalesMember to us-gaap_CostOfSalesMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AssetsNet" xml:lang="en-US" id="us-gaap_AssetsNet">Net assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNet" xlink:to="us-gaap_AssetsNet" xlink:title="label: AssetsNet to us-gaap_AssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNet1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AssetsNet1" xml:lang="en-US" id="us-gaap_AssetsNet1">Net Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNet" xlink:to="us-gaap_AssetsNet1" xlink:title="label: AssetsNet to us-gaap_AssetsNet1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNet_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsNet_lbl2" xml:lang="en-US" id="us-gaap_AssetsNet_lbl2">Net Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNet" xlink:to="us-gaap_AssetsNet_lbl2" xlink:title="label: AssetsNet to us-gaap_AssetsNet_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:label="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xml:lang="en-US" id="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss">Net income from PDMCX</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:to="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="label: VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss to us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss_lbl1" xml:lang="en-US" id="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss_lbl1">Variable Interest Entity, Measure of Activity, Operating Income or Loss</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:to="us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss_lbl1" xlink:title="label: VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss to us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:title="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xml:lang="en-US" id="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">Percentage of salary that can be contributed by the employee</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:title="label: DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent to us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl1" xml:lang="en-US" id="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl1">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl1" xlink:title="label: DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent to us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xml:lang="en-US" id="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance">Contribution from noncontrolling interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:to="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="label: NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance to us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance_lbl1" xml:lang="en-US" id="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance_lbl1">Noncontrolling Interest, Increase from Subsidiary Equity Issuance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:to="us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance_lbl1" xlink:title="label: NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance to us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsExpirationDate" xlink:label="OperatingLossCarryforwardsExpirationDate" xlink:title="OperatingLossCarryforwardsExpirationDate" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLossCarryforwardsExpirationDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLossCarryforwardsExpirationDate" xml:lang="en-US" id="us-gaap_OperatingLossCarryforwardsExpirationDate">Expiration periods</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLossCarryforwardsExpirationDate" xlink:to="us-gaap_OperatingLossCarryforwardsExpirationDate" xlink:title="label: OperatingLossCarryforwardsExpirationDate to us-gaap_OperatingLossCarryforwardsExpirationDate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SalesRevenueNetMember" xml:lang="en-US" id="us-gaap_SalesRevenueNetMember">Revenue [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember" xlink:title="label: SalesRevenueNetMember to us-gaap_SalesRevenueNetMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:label="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="LongLivedAssetsByGeographicAreasTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xml:lang="en-US" id="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock">Long-Lived Assets by Geographic Area</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:to="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="label: LongLivedAssetsByGeographicAreasTableTextBlock to us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:title="AccumulatedOtherComprehensiveIncomeLossLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossLineItems to us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="AccumulatedOtherComprehensiveIncomeLossTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossTable to us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="AllowanceForDoubtfulAccountsReceivableWriteOffs" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xml:lang="en-US" id="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs">Impairment loss on accounts receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="label: AllowanceForDoubtfulAccountsReceivableWriteOffs to us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">Contractual term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl1" xml:lang="en-US" id="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl1" xlink:title="label: SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod to us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentLiabilitiesTableTextBlock" xlink:label="OtherCurrentLiabilitiesTableTextBlock" xlink:title="OtherCurrentLiabilitiesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherCurrentLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherCurrentLiabilitiesTableTextBlock" xml:lang="en-US" id="us-gaap_OtherCurrentLiabilitiesTableTextBlock">Accrued Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCurrentLiabilitiesTableTextBlock" xlink:to="us-gaap_OtherCurrentLiabilitiesTableTextBlock" xlink:title="label: OtherCurrentLiabilitiesTableTextBlock to us-gaap_OtherCurrentLiabilitiesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherCurrentLiabilitiesTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherCurrentLiabilitiesTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_OtherCurrentLiabilitiesTableTextBlock_lbl1">Other Current Liabilities [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCurrentLiabilitiesTableTextBlock" xlink:to="us-gaap_OtherCurrentLiabilitiesTableTextBlock_lbl1" xlink:title="label: OtherCurrentLiabilitiesTableTextBlock to us-gaap_OtherCurrentLiabilitiesTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentTerm" xml:lang="en-US" id="us-gaap_DebtInstrumentTerm">Term of loan</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTerm" xlink:to="us-gaap_DebtInstrumentTerm" xlink:title="label: DebtInstrumentTerm to us-gaap_DebtInstrumentTerm" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTerm_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentTerm_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentTerm_lbl1">Debt Instrument, Term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTerm" xlink:to="us-gaap_DebtInstrumentTerm_lbl1" xlink:title="label: DebtInstrumentTerm to us-gaap_DebtInstrumentTerm_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:title="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xml:lang="en-US" id="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">Maximum percentage of employees' contributions that Company will match</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:title="label: DefinedContributionPlanEmployerMatchingContributionPercentOfMatch to us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl1" xml:lang="en-US" id="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl1">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl1" xlink:title="label: DefinedContributionPlanEmployerMatchingContributionPercentOfMatch to us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xml:lang="en-US" id="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid">Early buyout option to purchase tool</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="label: DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid to us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid_lbl1">Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid_lbl1" xlink:title="label: DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid to us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:label="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xml:lang="en-US" id="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract">Changes in Accumulated Other Comprehensive Income [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="label: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_lbl1" xml:lang="en-US" id="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_lbl1">AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_lbl1" xlink:title="label: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax">Other comprehensive income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="label: OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax to us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_lbl1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_lbl1">Other Comprehensive Income (Loss), before Reclassifications, Net of Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_lbl1" xlink:title="label: OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax to us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesTableTextBlock" xlink:label="OtherLiabilitiesTableTextBlock" xlink:title="OtherLiabilitiesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherLiabilitiesTableTextBlock" xml:lang="en-US" id="us-gaap_OtherLiabilitiesTableTextBlock">Other Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesTableTextBlock" xlink:to="us-gaap_OtherLiabilitiesTableTextBlock" xlink:title="label: OtherLiabilitiesTableTextBlock to us-gaap_OtherLiabilitiesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_OtherLiabilitiesTableTextBlock_lbl1">Other Liabilities [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesTableTextBlock" xlink:to="us-gaap_OtherLiabilitiesTableTextBlock_lbl1" xlink:title="label: OtherLiabilitiesTableTextBlock to us-gaap_OtherLiabilitiesTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xml:lang="en-US" id="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">Unrealized losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="label: AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax to us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl1" xml:lang="en-US" id="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl1">Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl1" xlink:title="label: AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax to us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xml:lang="en-US" id="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax">Unrealized gains</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="label: AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax to us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityDisclosureTextBlock" xlink:label="VariableInterestEntityDisclosureTextBlock" xlink:title="VariableInterestEntityDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_VariableInterestEntityDisclosureTextBlock" xml:lang="en-US" id="us-gaap_VariableInterestEntityDisclosureTextBlock">PDMCX JOINT VENTURE</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityDisclosureTextBlock" xlink:to="us-gaap_VariableInterestEntityDisclosureTextBlock" xlink:title="label: VariableInterestEntityDisclosureTextBlock to us-gaap_VariableInterestEntityDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableInterestEntityDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableInterestEntityDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_VariableInterestEntityDisclosureTextBlock_lbl1">Variable Interest Entity Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityDisclosureTextBlock" xlink:to="us-gaap_VariableInterestEntityDisclosureTextBlock_lbl1" xlink:title="label: VariableInterestEntityDisclosureTextBlock to us-gaap_VariableInterestEntityDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xml:lang="en-US" id="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">Amount remaining under authorization for purchase of additional shares</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="label: StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1 to us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_lbl1" xml:lang="en-US" id="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_lbl1">Share Repurchase Program, Remaining Authorized, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_lbl1" xlink:title="label: StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1 to us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:label="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xml:lang="en-US" id="us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract">Available-for-sale [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="label: AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract to us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet">Deferred income tax assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet1">Deferred income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet1" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AociIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xml:lang="en-US" id="us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember">AOCI Including Portion Attributable to Noncontrolling Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="label: AociIncludingPortionAttributableToNoncontrollingInterestMember to us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xml:lang="en-US" id="us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember">Foreign Currency Translation Adjustments [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="label: AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember to us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociAttributableToNoncontrollingInterestMember" xlink:label="AociAttributableToNoncontrollingInterestMember" xlink:title="AociAttributableToNoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AociAttributableToNoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AociAttributableToNoncontrollingInterestMember" xml:lang="en-US" id="us-gaap_AociAttributableToNoncontrollingInterestMember">AOCI Attributable to Noncontrolling Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AociAttributableToNoncontrollingInterestMember" xlink:to="us-gaap_AociAttributableToNoncontrollingInterestMember" xlink:title="label: AociAttributableToNoncontrollingInterestMember to us-gaap_AociAttributableToNoncontrollingInterestMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xml:lang="en-US" id="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember">Foreign Currency Translation Adjustments [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:to="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="label: AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember to us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember_lbl1">Accumulated Foreign Currency Adjustment Attributable to Noncontrolling Interest [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:to="us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember_lbl1" xlink:title="label: AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember to us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="DeferredIncomeTaxLiabilitiesNet" xlink:title="DeferredIncomeTaxLiabilitiesNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_DeferredIncomeTaxLiabilitiesNet" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxLiabilitiesNet">Other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:title="label: DeferredIncomeTaxLiabilitiesNet to us-gaap_DeferredIncomeTaxLiabilitiesNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl1">Deferred Income Tax Liabilities, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl1" xlink:title="label: DeferredIncomeTaxLiabilitiesNet to us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:label="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xml:lang="en-US" id="us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible">Uncertain tax positions that may be resolved over next twelve months</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:to="us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="label: DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible to us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TreasuryStockCommonMember" xml:lang="en-US" id="us-gaap_TreasuryStockCommonMember">Treasury Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember" xlink:title="label: TreasuryStockCommonMember to us-gaap_TreasuryStockCommonMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonMember_lbl1" xml:lang="en-US" id="us-gaap_TreasuryStockCommonMember_lbl1">Treasury Stock, Common [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl1" xlink:title="label: TreasuryStockCommonMember to us-gaap_TreasuryStockCommonMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostAbstract" xlink:label="LeaseCostAbstract" xlink:title="LeaseCostAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeaseCostAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeaseCostAbstract" xml:lang="en-US" id="us-gaap_LeaseCostAbstract">Lease, Cost [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeaseCostAbstract" xlink:to="us-gaap_LeaseCostAbstract" xlink:title="label: LeaseCostAbstract to us-gaap_LeaseCostAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseCost" xlink:label="OperatingLeaseCost" xlink:title="OperatingLeaseCost" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseCost" xml:lang="en-US" id="us-gaap_OperatingLeaseCost">Operating lease costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseCost" xlink:to="us-gaap_OperatingLeaseCost" xlink:title="label: OperatingLeaseCost to us-gaap_OperatingLeaseCost" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermLeaseCost" xlink:label="ShortTermLeaseCost" xlink:title="ShortTermLeaseCost" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShortTermLeaseCost" xml:lang="en-US" id="us-gaap_ShortTermLeaseCost">Short-term lease costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShortTermLeaseCost" xlink:to="us-gaap_ShortTermLeaseCost" xlink:title="label: ShortTermLeaseCost to us-gaap_ShortTermLeaseCost" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableLeaseCost" xlink:label="VariableLeaseCost" xlink:title="VariableLeaseCost" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableLeaseCost" xml:lang="en-US" id="us-gaap_VariableLeaseCost">Variable lease costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableLeaseCost" xlink:to="us-gaap_VariableLeaseCost" xlink:title="label: VariableLeaseCost to us-gaap_VariableLeaseCost" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:label="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:title="FinanceLeaseLiabilitiesPaymentsDueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract">Future Lease Payments Under Noncancelable Finance Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:title="label: FinanceLeaseLiabilitiesPaymentsDueAbstract to us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueAbstract" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueAbstract">Disaggregation of Revenue [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="us-gaap_DisaggregationOfRevenueAbstract" xlink:title="label: DisaggregationOfRevenueAbstract to us-gaap_DisaggregationOfRevenueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTableTextBlock">Disaggregation of Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:title="label: DisaggregationOfRevenueTableTextBlock to us-gaap_DisaggregationOfRevenueTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTable" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTable">Disaggregation of Revenue [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable" xlink:title="label: DisaggregationOfRevenueTable to us-gaap_DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredOverTimeMember" xlink:label="TransferredOverTimeMember" xlink:title="TransferredOverTimeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TransferredOverTimeMember" xml:lang="en-US" id="us-gaap_TransferredOverTimeMember">Over Time [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransferredOverTimeMember" xlink:to="us-gaap_TransferredOverTimeMember" xlink:title="label: TransferredOverTimeMember to us-gaap_TransferredOverTimeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueLineItems">Disaggregation of Revenue [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" xlink:title="label: DisaggregationOfRevenueLineItems to us-gaap_DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="TimingOfTransferOfGoodOrServiceAxis" xlink:title="TimingOfTransferOfGoodOrServiceAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TimingOfTransferOfGoodOrServiceAxis" xml:lang="en-US" id="us-gaap_TimingOfTransferOfGoodOrServiceAxis">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TimingOfTransferOfGoodOrServiceAxis" xlink:to="us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:title="label: TimingOfTransferOfGoodOrServiceAxis to us-gaap_TimingOfTransferOfGoodOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="TimingOfTransferOfGoodOrServiceDomain" xlink:title="TimingOfTransferOfGoodOrServiceDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TimingOfTransferOfGoodOrServiceDomain" xml:lang="en-US" id="us-gaap_TimingOfTransferOfGoodOrServiceDomain">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TimingOfTransferOfGoodOrServiceDomain" xlink:to="us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:title="label: TimingOfTransferOfGoodOrServiceDomain to us-gaap_TimingOfTransferOfGoodOrServiceDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xlink:label="ChangeInContractWithCustomerLiabilityAbstract" xlink:title="ChangeInContractWithCustomerLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xml:lang="en-US" id="us-gaap_ChangeInContractWithCustomerLiabilityAbstract">Change in Contract with Customer, Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ChangeInContractWithCustomerLiabilityAbstract" xlink:to="us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xlink:title="label: ChangeInContractWithCustomerLiabilityAbstract to us-gaap_ChangeInContractWithCustomerLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityRevenueRecognized">Revenue recognized from beginning liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:title="label: ContractWithCustomerLiabilityRevenueRecognized to us-gaap_ContractWithCustomerLiabilityRevenueRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl1">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl1" xlink:title="label: ContractWithCustomerLiabilityRevenueRecognized to us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="ContractWithCustomerAssetNet" xlink:title="ContractWithCustomerAssetNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetNet" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNet">Contract assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNet" xlink:to="us-gaap_ContractWithCustomerAssetNet" xlink:title="label: ContractWithCustomerAssetNet to us-gaap_ContractWithCustomerAssetNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetNetCurrent" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetCurrent">Contract assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:title="label: ContractWithCustomerAssetNetCurrent to us-gaap_ContractWithCustomerAssetNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1">Contract with Customer, Asset, after Allowance for Credit Loss, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xlink:title="label: ContractWithCustomerAssetNetCurrent to us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerAbstract" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerAbstract">REVENUE [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:title="label: RevenueFromContractWithCustomerAbstract to us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="RevenueFromContractWithCustomerTextBlock" xlink:title="RevenueFromContractWithCustomerTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerTextBlock" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerTextBlock">REVENUE</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:title="label: RevenueFromContractWithCustomerTextBlock to us-gaap_RevenueFromContractWithCustomerTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1">Revenue from Contract with Customer [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xlink:title="label: RevenueFromContractWithCustomerTextBlock to us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract">Contract with Customer, Asset and Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="label: ContractWithCustomerAssetAndLiabilityAbstract to us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract1">Contract with Customer, Asset and Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityAbstract1" xlink:title="label: ContractWithCustomerAssetAndLiabilityAbstract to us-gaap_ContractWithCustomerAssetAndLiabilityAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostImpairmentLoss" xlink:label="CapitalizedContractCostImpairmentLoss" xlink:title="CapitalizedContractCostImpairmentLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CapitalizedContractCostImpairmentLoss" xml:lang="en-US" id="us-gaap_CapitalizedContractCostImpairmentLoss">Impairment loss on contract assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalizedContractCostImpairmentLoss" xlink:to="us-gaap_CapitalizedContractCostImpairmentLoss" xlink:title="label: CapitalizedContractCostImpairmentLoss to us-gaap_CapitalizedContractCostImpairmentLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalizedContractCostImpairmentLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CapitalizedContractCostImpairmentLoss_lbl1" xml:lang="en-US" id="us-gaap_CapitalizedContractCostImpairmentLoss_lbl1">Capitalized Contract Cost, Impairment Loss</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalizedContractCostImpairmentLoss" xlink:to="us-gaap_CapitalizedContractCostImpairmentLoss_lbl1" xlink:title="label: CapitalizedContractCostImpairmentLoss to us-gaap_CapitalizedContractCostImpairmentLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenuePerformanceObligationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenuePerformanceObligationAbstract" xml:lang="en-US" id="us-gaap_RevenuePerformanceObligationAbstract">Revenue, Performance Obligation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="us-gaap_RevenuePerformanceObligationAbstract" xlink:title="label: RevenuePerformanceObligationAbstract to us-gaap_RevenuePerformanceObligationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="AssetsAndLiabilitiesLesseeAbstract" xlink:title="AssetsAndLiabilitiesLesseeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xml:lang="en-US" id="us-gaap_AssetsAndLiabilitiesLesseeAbstract">Operating and Finance Leases included in Consolidated Balance Sheets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:title="label: AssetsAndLiabilitiesLesseeAbstract to us-gaap_AssetsAndLiabilitiesLesseeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl1" xml:lang="en-US" id="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl1">Assets and Liabilities, Lessee [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl1" xlink:title="label: AssetsAndLiabilitiesLesseeAbstract to us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityCurrent" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityCurrent">Contract liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:title="label: ContractWithCustomerLiabilityCurrent to us-gaap_ContractWithCustomerLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1">Contract with Customer, Liability, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xlink:title="label: ContractWithCustomerLiabilityCurrent to us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityNoncurrent" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityNoncurrent">Contract liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:title="label: ContractWithCustomerLiabilityNoncurrent to us-gaap_ContractWithCustomerLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1">Contract with Customer, Liability, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xlink:title="label: ContractWithCustomerLiabilityNoncurrent to us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiability" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiability">Contract liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability" xlink:title="label: ContractWithCustomerLiability to us-gaap_ContractWithCustomerLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="FinanceLeaseRightOfUseAsset" xlink:title="FinanceLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_FinanceLeaseRightOfUseAsset" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAsset">Finance lease, right-of-use asset, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset" xlink:title="label: FinanceLeaseRightOfUseAsset to us-gaap_FinanceLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseRightOfUseAsset1" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAsset1">ROU Assets - Finance Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset1" xlink:title="label: FinanceLeaseRightOfUseAsset to us-gaap_FinanceLeaseRightOfUseAsset1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAsset_lbl2" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAsset_lbl2">Finance Lease, Right-of-Use Asset, after Accumulated Amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset_lbl2" xlink:title="label: FinanceLeaseRightOfUseAsset to us-gaap_FinanceLeaseRightOfUseAsset_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAsset">ROU Assets - Operating Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:title="label: OperatingLeaseRightOfUseAsset to us-gaap_OperatingLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAsset_lbl1">Operating Lease, Right-of-Use Asset</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xlink:title="label: OperatingLeaseRightOfUseAsset to us-gaap_OperatingLeaseRightOfUseAsset_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract">Future Lease Payments Under Noncancelable Operating Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="label: OperatingLeaseLiabilitiesPaymentsDueAbstract to us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1">Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xlink:title="label: OperatingLeaseLiabilitiesPaymentsDueAbstract to us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1">Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="TransferredAtPointInTimeMember" xlink:title="TransferredAtPointInTimeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TransferredAtPointInTimeMember" xml:lang="en-US" id="us-gaap_TransferredAtPointInTimeMember">At a Point in Time [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransferredAtPointInTimeMember" xlink:to="us-gaap_TransferredAtPointInTimeMember" xlink:title="label: TransferredAtPointInTimeMember to us-gaap_TransferredAtPointInTimeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAbstract" xlink:label="RestrictedCashAbstract" xlink:title="RestrictedCashAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCashAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RestrictedCashAbstract" xml:lang="en-US" id="us-gaap_RestrictedCashAbstract">Restricted Cash [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCashAbstract" xlink:to="us-gaap_RestrictedCashAbstract" xlink:title="label: RestrictedCashAbstract to us-gaap_RestrictedCashAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCashAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedCashAbstract_lbl1" xml:lang="en-US" id="us-gaap_RestrictedCashAbstract_lbl1">Restricted Cash [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCashAbstract" xlink:to="us-gaap_RestrictedCashAbstract_lbl1" xlink:title="label: RestrictedCashAbstract to us-gaap_RestrictedCashAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCash" xlink:label="RestrictedCash" xlink:title="RestrictedCash" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RestrictedCash" xml:lang="en-US" id="us-gaap_RestrictedCash">Less: Ending restricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCash" xlink:to="us-gaap_RestrictedCash" xlink:title="label: RestrictedCash to us-gaap_RestrictedCash" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCash1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_RestrictedCash1" xml:lang="en-US" id="us-gaap_RestrictedCash1">Restricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCash" xlink:to="us-gaap_RestrictedCash1" xlink:title="label: RestrictedCash to us-gaap_RestrictedCash1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedCash_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedCash_lbl2" xml:lang="en-US" id="us-gaap_RestrictedCash_lbl2">Restricted Cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedCash" xlink:to="us-gaap_RestrictedCash_lbl2" xlink:title="label: RestrictedCash to us-gaap_RestrictedCash_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US" id="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">Effects of exchange rate changes on cash, cash equivalents, and restricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="label: EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">Net increase in cash, cash equivalents, and restricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">Cash, cash equivalents, and restricted cash at end of year</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1">Cash, cash equivalents, and restricted cash at beginning of year</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="OperatingLeasePayments" xlink:title="OperatingLeasePayments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeasePayments" xml:lang="en-US" id="us-gaap_OperatingLeasePayments">Operating cash flows used for operating leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments" xlink:title="label: OperatingLeasePayments to us-gaap_OperatingLeasePayments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="FinanceLeasePrincipalPayments" xlink:title="FinanceLeasePrincipalPayments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeasePrincipalPayments" xml:lang="en-US" id="us-gaap_FinanceLeasePrincipalPayments">Financing cash flows used for finance leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:title="label: FinanceLeasePrincipalPayments to us-gaap_FinanceLeasePrincipalPayments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:title="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xml:lang="en-US" id="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">ROU assets obtained in exchange for operating lease obligations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:title="label: RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability to us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" xlink:label="ShortTermDebtWeightedAverageInterestRateOverTime" xlink:title="ShortTermDebtWeightedAverageInterestRateOverTime" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" xml:lang="en-US" id="us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime">Weighted-average interest rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShortTermDebtWeightedAverageInterestRateOverTime" xlink:to="us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" xlink:title="label: ShortTermDebtWeightedAverageInterestRateOverTime to us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="FinanceLeaseWeightedAverageDiscountRatePercent" xlink:title="FinanceLeaseWeightedAverageDiscountRatePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xml:lang="en-US" id="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent">Finance leases, Weighted-average discount rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:title="label: FinanceLeaseWeightedAverageDiscountRatePercent to us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">Operating leases, Weighted-average discount rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="label: OperatingLeaseWeightedAverageDiscountRatePercent to us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xlink:title="label: OperatingLeaseWeightedAverageDiscountRatePercent to us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">Total lease payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDue to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDue to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:label="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions">Income tax benefits of share-based compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="label: EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions to us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">2028</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearFour to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">2027</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearThree to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl1">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearThree to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearTwo to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl1">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearTwo to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="FinanceLeaseRightOfUseAssetAmortization" xlink:title="FinanceLeaseRightOfUseAssetAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetAmortization">Amortization of ROU assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:title="label: FinanceLeaseRightOfUseAssetAmortization to us-gaap_FinanceLeaseRightOfUseAssetAmortization" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiability" xml:lang="en-US" id="us-gaap_FinanceLeaseLiability">Finance lease amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability" xlink:title="label: FinanceLeaseLiability to us-gaap_FinanceLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseLiability1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiability1">Finance lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability1" xlink:title="label: FinanceLeaseLiability to us-gaap_FinanceLeaseLiability1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiability2" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_FinanceLeaseLiability2" xml:lang="en-US" id="us-gaap_FinanceLeaseLiability2">Lease Liabilities - Finance Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability2" xlink:title="label: FinanceLeaseLiability to us-gaap_FinanceLeaseLiability2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="FinanceLeaseLiabilityCurrent" xlink:title="FinanceLeaseLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityCurrent" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityCurrent">Finance Lease Liability, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:title="label: FinanceLeaseLiabilityCurrent to us-gaap_FinanceLeaseLiabilityCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="FinanceLeaseLiabilityUndiscountedExcessAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount">Imputed interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="label: FinanceLeaseLiabilityUndiscountedExcessAmount to us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl1">Finance Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl1" xlink:title="label: FinanceLeaseLiabilityUndiscountedExcessAmount to us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="FinanceLeaseLiabilityNoncurrent" xlink:title="FinanceLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityNoncurrent" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityNoncurrent">Finance Lease Liability, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityNoncurrent" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:title="label: FinanceLeaseLiabilityNoncurrent to us-gaap_FinanceLeaseLiabilityNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="FinanceLeaseLiabilityPaymentsDue" xlink:title="FinanceLeaseLiabilityPaymentsDue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDue" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDue">Total lease payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:title="label: FinanceLeaseLiabilityPaymentsDue to us-gaap_FinanceLeaseLiabilityPaymentsDue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl1">Finance Lease, Liability, to be Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDue to us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="label: FinanceLeaseLiabilityPaymentsDueNextTwelveMonths to us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1">Finance Lease, Liability, to be Paid, Year One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDueNextTwelveMonths to us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour">2028</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearFour to us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl1">Finance Lease, Liability, to be Paid, Year Four</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearFour to us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="FinanceLeaseLiabilityPaymentsDueYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree">2027</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearThree to us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl1">Finance Lease, Liability, to be Paid, Year Three</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearThree to us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="FinanceLeaseLiabilityPaymentsDueYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo">2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearTwo to us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl1">Finance Lease, Liability, to be Paid, Year Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDueYearTwo to us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="FinanceLeaseInterestExpense" xlink:title="FinanceLeaseInterestExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseInterestExpense" xml:lang="en-US" id="us-gaap_FinanceLeaseInterestExpense">Interest on finance lease</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseInterestExpense" xlink:to="us-gaap_FinanceLeaseInterestExpense" xlink:title="label: FinanceLeaseInterestExpense to us-gaap_FinanceLeaseInterestExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:label="FinanceLeaseInterestPaymentOnLiability" xlink:title="FinanceLeaseInterestPaymentOnLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseInterestPaymentOnLiability" xml:lang="en-US" id="us-gaap_FinanceLeaseInterestPaymentOnLiability">Operating cash flows used for finance leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseInterestPaymentOnLiability" xlink:to="us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:title="label: FinanceLeaseInterestPaymentOnLiability to us-gaap_FinanceLeaseInterestPaymentOnLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_OperatingLeaseLiability" xml:lang="en-US" id="us-gaap_OperatingLeaseLiability">Operating lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability" xlink:title="label: OperatingLeaseLiability to us-gaap_OperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingLeaseLiability1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiability1">Lease Liabilities - Operating Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability1" xlink:title="label: OperatingLeaseLiability to us-gaap_OperatingLeaseLiability1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiability_lbl2" xml:lang="en-US" id="us-gaap_OperatingLeaseLiability_lbl2">Operating Lease, Liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl2" xlink:title="label: OperatingLeaseLiability to us-gaap_OperatingLeaseLiability_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityCurrent">Operating Lease Liability - Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:title="label: OperatingLeaseLiabilityCurrent to us-gaap_OperatingLeaseLiabilityCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">Imputed interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="label: LesseeOperatingLeaseLiabilityUndiscountedExcessAmount to us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl1">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityUndiscountedExcessAmount to us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent">Operating Lease Liability, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent1">Operating lease</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent1" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">Contract Balances</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="label: ContractWithCustomerAssetAndLiabilityTableTextBlock to us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">Finance Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="label: FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList to us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="label: FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList to us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="label: FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList to us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="label: OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList to us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="label: OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList to us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="label: OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList to us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="LeaseCostTableTextBlock" xlink:title="LeaseCostTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeaseCostTableTextBlock" xml:lang="en-US" id="us-gaap_LeaseCostTableTextBlock">Lease Costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeaseCostTableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock" xlink:title="label: LeaseCostTableTextBlock to us-gaap_LeaseCostTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="LesseeLeasesPolicyTextBlock" xlink:title="LesseeLeasesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LesseeLeasesPolicyTextBlock" xml:lang="en-US" id="us-gaap_LesseeLeasesPolicyTextBlock">Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock" xlink:title="label: LesseeLeasesPolicyTextBlock to us-gaap_LesseeLeasesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LesseeLeasesPolicyTextBlock_lbl1">Lessee, Leases [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xlink:title="label: LesseeLeasesPolicyTextBlock to us-gaap_LesseeLeasesPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="LesseeOperatingLeasesTextBlock" xlink:title="LesseeOperatingLeasesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_LesseeOperatingLeasesTextBlock" xml:lang="en-US" id="us-gaap_LesseeOperatingLeasesTextBlock">LEASES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock" xlink:title="label: LesseeOperatingLeasesTextBlock to us-gaap_LesseeOperatingLeasesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeasesTextBlock_lbl1">Lessee, Operating Leases [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xlink:title="label: LesseeOperatingLeasesTextBlock to us-gaap_LesseeOperatingLeasesTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="FinanceLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xml:lang="en-US" id="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1">Finance leases, Weighted-average remaining lease term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="label: FinanceLeaseWeightedAverageRemainingLeaseTerm1 to us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseTermOfContract1" xlink:label="LesseeFinanceLeaseTermOfContract1" xlink:title="LesseeFinanceLeaseTermOfContract1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeFinanceLeaseTermOfContract1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeFinanceLeaseTermOfContract1" xml:lang="en-US" id="us-gaap_LesseeFinanceLeaseTermOfContract1">Finance lease contract term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeFinanceLeaseTermOfContract1" xlink:to="us-gaap_LesseeFinanceLeaseTermOfContract1" xlink:title="label: LesseeFinanceLeaseTermOfContract1 to us-gaap_LesseeFinanceLeaseTermOfContract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">Operating leases, Weighted-average remaining lease term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="label: OperatingLeaseWeightedAverageRemainingLeaseTerm1 to us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:label="DebtSecuritiesAvailableForSaleTableTextBlock" xlink:title="DebtSecuritiesAvailableForSaleTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xml:lang="en-US" id="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock">Available-for-Sale Debt Securities and Time Deposits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtSecuritiesAvailableForSaleTableTextBlock" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:title="label: DebtSecuritiesAvailableForSaleTableTextBlock to us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="label: RevenueFromContractWithCustomerPolicyTextBlock to us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl1">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl1" xlink:title="label: RevenueFromContractWithCustomerPolicyTextBlock to us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:label="DebtSecuritiesAvailableForSaleTable" xlink:title="DebtSecuritiesAvailableForSaleTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtSecuritiesAvailableForSaleTable" xml:lang="en-US" id="us-gaap_DebtSecuritiesAvailableForSaleTable">Debt Securities, Available-for-Sale [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:title="label: DebtSecuritiesAvailableForSaleTable to us-gaap_DebtSecuritiesAvailableForSaleTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xml:lang="en-US" id="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock">Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CreditLossFinancialInstrumentPolicyTextBlock" xlink:to="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="label: CreditLossFinancialInstrumentPolicyTextBlock to us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityAbstract" xlink:label="FinanceLeaseLiabilityAbstract" xlink:title="FinanceLeaseLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseLiabilityAbstract" xml:lang="en-US" id="us-gaap_FinanceLeaseLiabilityAbstract">Finance Lease Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="us-gaap_FinanceLeaseLiabilityAbstract" xlink:title="label: FinanceLeaseLiabilityAbstract to us-gaap_FinanceLeaseLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityAbstract" xlink:label="OperatingLeaseLiabilityAbstract" xlink:title="OperatingLeaseLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityAbstract" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityAbstract">Operating Lease Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityAbstract" xlink:title="label: OperatingLeaseLiabilityAbstract to us-gaap_OperatingLeaseLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="LeaseContractualTermAxis" xlink:title="LeaseContractualTermAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeaseContractualTermAxis" xml:lang="en-US" id="us-gaap_LeaseContractualTermAxis">Lease Contractual Term [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermAxis" xlink:title="label: LeaseContractualTermAxis to us-gaap_LeaseContractualTermAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="LeaseContractualTermDomain" xlink:title="LeaseContractualTermDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeaseContractualTermDomain" xml:lang="en-US" id="us-gaap_LeaseContractualTermDomain">Lease Contractual Term [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeaseContractualTermDomain" xlink:to="us-gaap_LeaseContractualTermDomain" xlink:title="label: LeaseContractualTermDomain to us-gaap_LeaseContractualTermDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization">Finance lease, right-of-use asset, gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="label: FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization to us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:label="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract">Finance lease, Right-of-use asset [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="label: FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract to us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract_lbl1">Finance Lease, Right-of-Use Asset, after Accumulated Amortization [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract_lbl1" xlink:title="label: FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract to us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetAccumulatedAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization">Accumulated amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="label: FinanceLeaseRightOfUseAssetAccumulatedAmortization to us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization_lbl1">Finance Lease, Right-of-Use Asset, Accumulated Amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization_lbl1" xlink:title="label: FinanceLeaseRightOfUseAssetAccumulatedAmortization to us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:label xlink:type="resource" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US" id="srt_TitleOfIndividualWithRelationshipToEntityDomain">Title and Position [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="label: TitleOfIndividualWithRelationshipToEntityDomain to srt_TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain" xlink:title="NameOfMajorCustomerDomain" />
    <link:label xlink:type="resource" xlink:label="srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_NameOfMajorCustomerDomain" xml:lang="en-US" id="srt_NameOfMajorCustomerDomain">Customer [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain" xlink:title="label: NameOfMajorCustomerDomain to srt_NameOfMajorCustomerDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ExecutiveOfficerMember" xlink:label="ExecutiveOfficerMember" xlink:title="ExecutiveOfficerMember" />
    <link:label xlink:type="resource" xlink:label="srt_ExecutiveOfficerMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ExecutiveOfficerMember" xml:lang="en-US" id="srt_ExecutiveOfficerMember">Executive [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ExecutiveOfficerMember" xlink:to="srt_ExecutiveOfficerMember" xlink:title="label: ExecutiveOfficerMember to srt_ExecutiveOfficerMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:label xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_SegmentGeographicalDomain" xml:lang="en-US" id="srt_SegmentGeographicalDomain">Geographical [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain" xlink:title="label: SegmentGeographicalDomain to srt_SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:label xlink:type="resource" xlink:label="srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StatementGeographicalAxis" xml:lang="en-US" id="srt_StatementGeographicalAxis">Geographical [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis" xlink:title="label: StatementGeographicalAxis to srt_StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="MajorCustomersAxis" xlink:title="MajorCustomersAxis" />
    <link:label xlink:type="resource" xlink:label="srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MajorCustomersAxis" xml:lang="en-US" id="srt_MajorCustomersAxis">Customer [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis" xlink:title="label: MajorCustomersAxis to srt_MajorCustomersAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:label xlink:type="resource" xlink:label="srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeAxis" xml:lang="en-US" id="srt_RangeAxis">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeAxis" xlink:to="srt_RangeAxis" xlink:title="label: RangeAxis to srt_RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:label xlink:type="resource" xlink:label="srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeMember" xml:lang="en-US" id="srt_RangeMember">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeMember" xlink:to="srt_RangeMember" xlink:title="label: RangeMember to srt_RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:label xlink:type="resource" xlink:label="srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MaximumMember" xml:lang="en-US" id="srt_MaximumMember">Maximum [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MaximumMember" xlink:to="srt_MaximumMember" xlink:title="label: MaximumMember to srt_MaximumMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:label xlink:type="resource" xlink:label="srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MinimumMember" xml:lang="en-US" id="srt_MinimumMember">Minimum [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumMember" xlink:to="srt_MinimumMember" xlink:title="label: MinimumMember to srt_MinimumMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:label xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ShareRepurchaseProgramAxis" xml:lang="en-US" id="srt_ShareRepurchaseProgramAxis">Share Repurchase Program [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramAxis" xlink:title="label: ShareRepurchaseProgramAxis to srt_ShareRepurchaseProgramAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:label xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ShareRepurchaseProgramDomain" xml:lang="en-US" id="srt_ShareRepurchaseProgramDomain">Share Repurchase Program [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramDomain" xlink:to="srt_ShareRepurchaseProgramDomain" xlink:title="label: ShareRepurchaseProgramDomain to srt_ShareRepurchaseProgramDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:label="ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:title="ScheduleOfCondensedIncomeStatementTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="srt_ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ScheduleOfCondensedIncomeStatementTableTextBlock" xml:lang="en-US" id="srt_ScheduleOfCondensedIncomeStatementTableTextBlock">Net Income Recorded from Operations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:to="srt_ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:title="label: ScheduleOfCondensedIncomeStatementTableTextBlock to srt_ScheduleOfCondensedIncomeStatementTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:label="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:title="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xml:lang="en-US" id="srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock">Unrecognized Commitments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:to="srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:title="label: ContractualObligationFiscalYearMaturityScheduleTableTextBlock to srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:label xlink:type="resource" xlink:label="srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_TitleOfIndividualAxis" xml:lang="en-US" id="srt_TitleOfIndividualAxis">Title and Position [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis" xlink:title="label: TitleOfIndividualAxis to srt_TitleOfIndividualAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_EuropeMember" xlink:label="EuropeMember" xlink:title="EuropeMember" />
    <link:label xlink:type="resource" xlink:label="srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_EuropeMember" xml:lang="en-US" id="srt_EuropeMember">Europe [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EuropeMember" xlink:to="srt_EuropeMember" xlink:title="label: EuropeMember to srt_EuropeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramExpirationDate" xlink:label="StockRepurchaseProgramExpirationDate" xlink:title="StockRepurchaseProgramExpirationDate" />
    <link:label xlink:type="resource" xlink:label="srt_StockRepurchaseProgramExpirationDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="srt_StockRepurchaseProgramExpirationDate" xml:lang="en-US" id="srt_StockRepurchaseProgramExpirationDate">Stock repurchase program - expiration and termination date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramExpirationDate" xlink:to="srt_StockRepurchaseProgramExpirationDate" xlink:title="label: StockRepurchaseProgramExpirationDate to srt_StockRepurchaseProgramExpirationDate" />
    <link:label xlink:type="resource" xlink:label="srt_StockRepurchaseProgramExpirationDate_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StockRepurchaseProgramExpirationDate_lbl1" xml:lang="en-US" id="srt_StockRepurchaseProgramExpirationDate_lbl1">Share Repurchase Program, Expiration Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramExpirationDate" xlink:to="srt_StockRepurchaseProgramExpirationDate_lbl1" xlink:title="label: StockRepurchaseProgramExpirationDate to srt_StockRepurchaseProgramExpirationDate_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:label xlink:type="resource" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StockRepurchaseProgramAuthorizedAmount1" xml:lang="en-US" id="srt_StockRepurchaseProgramAuthorizedAmount1">Stock repurchased authorized amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramAuthorizedAmount1" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1" xlink:title="label: StockRepurchaseProgramAuthorizedAmount1 to srt_StockRepurchaseProgramAuthorizedAmount1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:label xlink:type="resource" xlink:label="srt_ConsolidatedEntitiesAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ConsolidatedEntitiesAxis" xml:lang="en-US" id="srt_ConsolidatedEntitiesAxis">Consolidated Entities [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidatedEntitiesAxis" xlink:to="srt_ConsolidatedEntitiesAxis" xlink:title="label: ConsolidatedEntitiesAxis to srt_ConsolidatedEntitiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:label xlink:type="resource" xlink:label="srt_ConsolidatedEntitiesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ConsolidatedEntitiesDomain" xml:lang="en-US" id="srt_ConsolidatedEntitiesDomain">Consolidated Entities [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidatedEntitiesDomain" xlink:to="srt_ConsolidatedEntitiesDomain" xlink:title="label: ConsolidatedEntitiesDomain to srt_ConsolidatedEntitiesDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:label xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ProductsAndServicesDomain" xml:lang="en-US" id="srt_ProductsAndServicesDomain">Products and Services [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain" xlink:title="label: ProductsAndServicesDomain to srt_ProductsAndServicesDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:label xlink:type="resource" xlink:label="srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ProductOrServiceAxis" xml:lang="en-US" id="srt_ProductOrServiceAxis">Products and Services [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis" xlink:title="label: ProductOrServiceAxis to srt_ProductOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:label xlink:type="resource" xlink:label="country_CN" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_CN" xml:lang="en-US" id="country_CN">China [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CN" xlink:to="country_CN" xlink:title="label: CN to country_CN" />
    <link:label xlink:type="resource" xlink:label="country_CN1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="country_CN1" xml:lang="en-US" id="country_CN1">China [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CN" xlink:to="country_CN1" xlink:title="label: CN to country_CN1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:label xlink:type="resource" xlink:label="country_KR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="country_KR" xml:lang="en-US" id="country_KR">Korea [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="KR" xlink:to="country_KR" xlink:title="label: KR to country_KR" />
    <link:label xlink:type="resource" xlink:label="country_KR1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_KR1" xml:lang="en-US" id="country_KR1">Korea [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="KR" xlink:to="country_KR1" xlink:title="label: KR to country_KR1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:label xlink:type="resource" xlink:label="country_TW" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="country_TW" xml:lang="en-US" id="country_TW">Taiwan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TW" xlink:to="country_TW" xlink:title="label: TW to country_TW" />
    <link:label xlink:type="resource" xlink:label="country_TW1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_TW1" xml:lang="en-US" id="country_TW1">Taiwan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TW" xlink:to="country_TW1" xlink:title="label: TW to country_TW1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:label xlink:type="resource" xlink:label="country_US" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_US" xml:lang="en-US" id="country_US">United States [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="US" xlink:to="country_US" xlink:title="label: US to country_US" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:label xlink:type="resource" xlink:label="dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CoverAbstract" xml:lang="en-US" id="dei_CoverAbstract">Cover [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CoverAbstract" xlink:to="dei_CoverAbstract" xlink:title="label: CoverAbstract to dei_CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentType" xml:lang="en-US" id="dei_DocumentType">Document Type</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentType" xlink:to="dei_DocumentType" xlink:title="label: DocumentType to dei_DocumentType" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentAnnualReport" xlink:label="DocumentAnnualReport" xlink:title="DocumentAnnualReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentAnnualReport" xml:lang="en-US" id="dei_DocumentAnnualReport">Document Annual Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport" xlink:title="label: DocumentAnnualReport to dei_DocumentAnnualReport" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentTransitionReport" xml:lang="en-US" id="dei_DocumentTransitionReport">Document Transition Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport" xlink:title="label: DocumentTransitionReport to dei_DocumentTransitionReport" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFinStmtErrorCorrectionFlag" xlink:label="DocumentFinStmtErrorCorrectionFlag" xlink:title="DocumentFinStmtErrorCorrectionFlag" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFinStmtErrorCorrectionFlag" xml:lang="en-US" id="dei_DocumentFinStmtErrorCorrectionFlag">Document Financial Statement Error Correction [Flag]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFinStmtErrorCorrectionFlag" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag" xlink:title="label: DocumentFinStmtErrorCorrectionFlag to dei_DocumentFinStmtErrorCorrectionFlag" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:label xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityInteractiveDataCurrent" xml:lang="en-US" id="dei_EntityInteractiveDataCurrent">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent" xlink:title="label: EntityInteractiveDataCurrent to dei_EntityInteractiveDataCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:label xlink:type="resource" xlink:label="dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AmendmentFlag" xml:lang="en-US" id="dei_AmendmentFlag">Amendment Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendmentFlag" xlink:to="dei_AmendmentFlag" xlink:title="label: AmendmentFlag to dei_AmendmentFlag" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="IcfrAuditorAttestationFlag" xlink:title="IcfrAuditorAttestationFlag" />
    <link:label xlink:type="resource" xlink:label="dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_IcfrAuditorAttestationFlag" xml:lang="en-US" id="dei_IcfrAuditorAttestationFlag">ICFR Auditor Attestation Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag" xlink:title="label: IcfrAuditorAttestationFlag to dei_IcfrAuditorAttestationFlag" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalYearFocus" xml:lang="en-US" id="dei_DocumentFiscalYearFocus">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus" xlink:title="label: DocumentFiscalYearFocus to dei_DocumentFiscalYearFocus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalPeriodFocus" xml:lang="en-US" id="dei_DocumentFiscalPeriodFocus">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:title="label: DocumentFiscalPeriodFocus to dei_DocumentFiscalPeriodFocus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentPeriodEndDate" xml:lang="en-US" id="dei_DocumentPeriodEndDate">Document Period End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate" xlink:title="label: DocumentPeriodEndDate to dei_DocumentPeriodEndDate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:label xlink:type="resource" xlink:label="dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityRegistrantName" xml:lang="en-US" id="dei_EntityRegistrantName">Entity Registrant Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityRegistrantName" xlink:to="dei_EntityRegistrantName" xlink:title="label: EntityRegistrantName to dei_EntityRegistrantName" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCentralIndexKey" xml:lang="en-US" id="dei_EntityCentralIndexKey">Entity Central Index Key</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey" xlink:title="label: EntityCentralIndexKey to dei_EntityCentralIndexKey" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFileNumber" xml:lang="en-US" id="dei_EntityFileNumber">Entity File Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFileNumber" xlink:to="dei_EntityFileNumber" xlink:title="label: EntityFileNumber to dei_EntityFileNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityTaxIdentificationNumber" xml:lang="en-US" id="dei_EntityTaxIdentificationNumber">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber" xlink:title="label: EntityTaxIdentificationNumber to dei_EntityTaxIdentificationNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityIncorporationStateCountryCode" xml:lang="en-US" id="dei_EntityIncorporationStateCountryCode">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:title="label: EntityIncorporationStateCountryCode to dei_EntityIncorporationStateCountryCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CurrentFiscalYearEndDate" xml:lang="en-US" id="dei_CurrentFiscalYearEndDate">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate" xlink:title="label: CurrentFiscalYearEndDate to dei_CurrentFiscalYearEndDate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="EntityWellKnownSeasonedIssuer" xlink:title="EntityWellKnownSeasonedIssuer" />
    <link:label xlink:type="resource" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityWellKnownSeasonedIssuer" xml:lang="en-US" id="dei_EntityWellKnownSeasonedIssuer">Entity Well-known Seasoned Issuer</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer" xlink:title="label: EntityWellKnownSeasonedIssuer to dei_EntityWellKnownSeasonedIssuer" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityVoluntaryFilers" xlink:label="EntityVoluntaryFilers" xlink:title="EntityVoluntaryFilers" />
    <link:label xlink:type="resource" xlink:label="dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityVoluntaryFilers" xml:lang="en-US" id="dei_EntityVoluntaryFilers">Entity Voluntary Filers</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers" xlink:title="label: EntityVoluntaryFilers to dei_EntityVoluntaryFilers" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCurrentReportingStatus" xml:lang="en-US" id="dei_EntityCurrentReportingStatus">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus" xlink:title="label: EntityCurrentReportingStatus to dei_EntityCurrentReportingStatus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityShellCompany" xml:lang="en-US" id="dei_EntityShellCompany">Entity Shell Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityShellCompany" xlink:to="dei_EntityShellCompany" xlink:title="label: EntityShellCompany to dei_EntityShellCompany" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFilerCategory" xml:lang="en-US" id="dei_EntityFilerCategory">Entity Filer Category</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFilerCategory" xlink:to="dei_EntityFilerCategory" xlink:title="label: EntityFilerCategory to dei_EntityFilerCategory" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:label xlink:type="resource" xlink:label="dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntitySmallBusiness" xml:lang="en-US" id="dei_EntitySmallBusiness">Entity Small Business</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness" xlink:title="label: EntitySmallBusiness to dei_EntitySmallBusiness" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityEmergingGrowthCompany" xml:lang="en-US" id="dei_EntityEmergingGrowthCompany">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany" xlink:title="label: EntityEmergingGrowthCompany to dei_EntityEmergingGrowthCompany" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityPublicFloat" xlink:label="EntityPublicFloat" xlink:title="EntityPublicFloat" />
    <link:label xlink:type="resource" xlink:label="dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityPublicFloat" xml:lang="en-US" id="dei_EntityPublicFloat">Entity Public Float</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityPublicFloat" xlink:to="dei_EntityPublicFloat" xlink:title="label: EntityPublicFloat to dei_EntityPublicFloat" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine1" xml:lang="en-US" id="dei_EntityAddressAddressLine1">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1" xlink:title="label: EntityAddressAddressLine1 to dei_EntityAddressAddressLine1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressCityOrTown" xml:lang="en-US" id="dei_EntityAddressCityOrTown">Entity Address, City or Town</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown" xlink:title="label: EntityAddressCityOrTown to dei_EntityAddressCityOrTown" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressStateOrProvince" xml:lang="en-US" id="dei_EntityAddressStateOrProvince">Entity Address, State or Province</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince" xlink:title="label: EntityAddressStateOrProvince to dei_EntityAddressStateOrProvince" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressPostalZipCode" xml:lang="en-US" id="dei_EntityAddressPostalZipCode">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode" xlink:title="label: EntityAddressPostalZipCode to dei_EntityAddressPostalZipCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:label xlink:type="resource" xlink:label="dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CityAreaCode" xml:lang="en-US" id="dei_CityAreaCode">City Area Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CityAreaCode" xlink:to="dei_CityAreaCode" xlink:title="label: CityAreaCode to dei_CityAreaCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:label xlink:type="resource" xlink:label="dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_LocalPhoneNumber" xml:lang="en-US" id="dei_LocalPhoneNumber">Local Phone Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber" xlink:title="label: LocalPhoneNumber to dei_LocalPhoneNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:label xlink:type="resource" xlink:label="dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_Security12bTitle" xml:lang="en-US" id="dei_Security12bTitle">Title of 12(b) Security</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Security12bTitle" xlink:to="dei_Security12bTitle" xlink:title="label: Security12bTitle to dei_Security12bTitle" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:label xlink:type="resource" xlink:label="dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_TradingSymbol" xml:lang="en-US" id="dei_TradingSymbol">Trading Symbol</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TradingSymbol" xlink:to="dei_TradingSymbol" xlink:title="label: TradingSymbol to dei_TradingSymbol" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:label xlink:type="resource" xlink:label="dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_SecurityExchangeName" xml:lang="en-US" id="dei_SecurityExchangeName">Security Exchange Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecurityExchangeName" xlink:to="dei_SecurityExchangeName" xlink:title="label: SecurityExchangeName to dei_SecurityExchangeName" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCommonStockSharesOutstanding" xml:lang="en-US" id="dei_EntityCommonStockSharesOutstanding">Entity Common Stock, Shares Outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:title="label: EntityCommonStockSharesOutstanding to dei_EntityCommonStockSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorName" xlink:label="AuditorName" xlink:title="AuditorName" />
    <link:label xlink:type="resource" xlink:label="dei_AuditorName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AuditorName" xml:lang="en-US" id="dei_AuditorName">Auditor Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AuditorName" xlink:to="dei_AuditorName" xlink:title="label: AuditorName to dei_AuditorName" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorFirmId" xlink:label="AuditorFirmId" xlink:title="AuditorFirmId" />
    <link:label xlink:type="resource" xlink:label="dei_AuditorFirmId" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AuditorFirmId" xml:lang="en-US" id="dei_AuditorFirmId">Auditor Firm ID</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AuditorFirmId" xlink:to="dei_AuditorFirmId" xlink:title="label: AuditorFirmId to dei_AuditorFirmId" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorLocation" xlink:label="AuditorLocation" xlink:title="AuditorLocation" />
    <link:label xlink:type="resource" xlink:label="dei_AuditorLocation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AuditorLocation" xml:lang="en-US" id="dei_AuditorLocation">Auditor Location</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AuditorLocation" xlink:to="dei_AuditorLocation" xlink:title="label: AuditorLocation to dei_AuditorLocation" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NetSettlementsOfRestrictedStockAwards" xlink:label="NetSettlementsOfRestrictedStockAwards" xlink:title="NetSettlementsOfRestrictedStockAwards" />
    <link:label xlink:type="resource" xlink:label="plab_NetSettlementsOfRestrictedStockAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NetSettlementsOfRestrictedStockAwards_lbl" xml:lang="en-US" id="plab_NetSettlementsOfRestrictedStockAwards_lbl">Amount of cash outflow from the net settlement of restricted stock awards.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetSettlementsOfRestrictedStockAwards" xlink:to="plab_NetSettlementsOfRestrictedStockAwards_lbl" xlink:title="label: NetSettlementsOfRestrictedStockAwards to plab_NetSettlementsOfRestrictedStockAwards_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NetSettlementsOfRestrictedStockAwards_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NetSettlementsOfRestrictedStockAwards_lbl1" xml:lang="en-US" id="plab_NetSettlementsOfRestrictedStockAwards_lbl1">Net Settlements of Restricted Stock Awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetSettlementsOfRestrictedStockAwards" xlink:to="plab_NetSettlementsOfRestrictedStockAwards_lbl1" xlink:title="label: NetSettlementsOfRestrictedStockAwards to plab_NetSettlementsOfRestrictedStockAwards_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NetSettlementsOfRestrictedStockAwards" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="plab_NetSettlementsOfRestrictedStockAwards" xml:lang="en-US" id="plab_NetSettlementsOfRestrictedStockAwards">Net settlements of restricted stock awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetSettlementsOfRestrictedStockAwards" xlink:to="plab_NetSettlementsOfRestrictedStockAwards" xlink:title="label: NetSettlementsOfRestrictedStockAwards to plab_NetSettlementsOfRestrictedStockAwards" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProceedsFromGovernmentIncentives" xlink:label="ProceedsFromGovernmentIncentives" xlink:title="ProceedsFromGovernmentIncentives" />
    <link:label xlink:type="resource" xlink:label="plab_ProceedsFromGovernmentIncentives_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ProceedsFromGovernmentIncentives_lbl" xml:lang="en-US" id="plab_ProceedsFromGovernmentIncentives_lbl">The cash inflow from government incentives during the period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromGovernmentIncentives" xlink:to="plab_ProceedsFromGovernmentIncentives_lbl" xlink:title="label: ProceedsFromGovernmentIncentives to plab_ProceedsFromGovernmentIncentives_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ProceedsFromGovernmentIncentives_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ProceedsFromGovernmentIncentives_lbl1" xml:lang="en-US" id="plab_ProceedsFromGovernmentIncentives_lbl1">Proceeds From Government Incentives</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromGovernmentIncentives" xlink:to="plab_ProceedsFromGovernmentIncentives_lbl1" xlink:title="label: ProceedsFromGovernmentIncentives to plab_ProceedsFromGovernmentIncentives_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ProceedsFromGovernmentIncentives" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ProceedsFromGovernmentIncentives" xml:lang="en-US" id="plab_ProceedsFromGovernmentIncentives">Government incentives</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromGovernmentIncentives" xlink:to="plab_ProceedsFromGovernmentIncentives" xlink:title="label: ProceedsFromGovernmentIncentives to plab_ProceedsFromGovernmentIncentives" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ExpectedRefundableFederalInvestmentTaxCredit" xlink:label="ExpectedRefundableFederalInvestmentTaxCredit" xlink:title="ExpectedRefundableFederalInvestmentTaxCredit" />
    <link:label xlink:type="resource" xlink:label="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl" xml:lang="en-US" id="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl">Future cash inflow expected from refundable federal investment tax credit.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ExpectedRefundableFederalInvestmentTaxCredit" xlink:to="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl" xlink:title="label: ExpectedRefundableFederalInvestmentTaxCredit to plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl1" xml:lang="en-US" id="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl1">Expected Refundable Federal Investment Tax Credit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ExpectedRefundableFederalInvestmentTaxCredit" xlink:to="plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl1" xlink:title="label: ExpectedRefundableFederalInvestmentTaxCredit to plab_ExpectedRefundableFederalInvestmentTaxCredit_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ExpectedRefundableFederalInvestmentTaxCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ExpectedRefundableFederalInvestmentTaxCredit" xml:lang="en-US" id="plab_ExpectedRefundableFederalInvestmentTaxCredit">Expected refundable federal investment tax credit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ExpectedRefundableFederalInvestmentTaxCredit" xlink:to="plab_ExpectedRefundableFederalInvestmentTaxCredit" xlink:title="label: ExpectedRefundableFederalInvestmentTaxCredit to plab_ExpectedRefundableFederalInvestmentTaxCredit" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherMember" xlink:label="OtherMember" xlink:title="OtherMember" />
    <link:label xlink:type="resource" xlink:label="plab_OtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_OtherMember_lbl" xml:lang="en-US" id="plab_OtherMember_lbl">Represents one of the geographical areas where entity's activities take place.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherMember" xlink:to="plab_OtherMember_lbl" xlink:title="label: OtherMember to plab_OtherMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_OtherMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_OtherMember_lbl1" xml:lang="en-US" id="plab_OtherMember_lbl1">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherMember" xlink:to="plab_OtherMember_lbl1" xlink:title="label: OtherMember to plab_OtherMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_OtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_OtherMember" xml:lang="en-US" id="plab_OtherMember">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherMember" xlink:to="plab_OtherMember" xlink:title="label: OtherMember to plab_OtherMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FlatPanelDisplaysMember" xlink:label="FlatPanelDisplaysMember" xlink:title="FlatPanelDisplaysMember" />
    <link:label xlink:type="resource" xlink:label="plab_FlatPanelDisplaysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FlatPanelDisplaysMember_lbl" xml:lang="en-US" id="plab_FlatPanelDisplaysMember_lbl">Represents one of the products of the entity.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FlatPanelDisplaysMember" xlink:to="plab_FlatPanelDisplaysMember_lbl" xlink:title="label: FlatPanelDisplaysMember to plab_FlatPanelDisplaysMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FlatPanelDisplaysMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FlatPanelDisplaysMember_lbl1" xml:lang="en-US" id="plab_FlatPanelDisplaysMember_lbl1">Flat Panel Displays [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FlatPanelDisplaysMember" xlink:to="plab_FlatPanelDisplaysMember_lbl1" xlink:title="label: FlatPanelDisplaysMember to plab_FlatPanelDisplaysMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FlatPanelDisplaysMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FlatPanelDisplaysMember" xml:lang="en-US" id="plab_FlatPanelDisplaysMember">FPD [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FlatPanelDisplaysMember" xlink:to="plab_FlatPanelDisplaysMember" xlink:title="label: FlatPanelDisplaysMember to plab_FlatPanelDisplaysMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndFlatPanelDisplaysMember" xlink:label="HighEndFlatPanelDisplaysMember" xlink:title="HighEndFlatPanelDisplaysMember" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndFlatPanelDisplaysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_HighEndFlatPanelDisplaysMember_lbl" xml:lang="en-US" id="plab_HighEndFlatPanelDisplaysMember_lbl">Represents the classification of products by performance.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndFlatPanelDisplaysMember" xlink:to="plab_HighEndFlatPanelDisplaysMember_lbl" xlink:title="label: HighEndFlatPanelDisplaysMember to plab_HighEndFlatPanelDisplaysMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndFlatPanelDisplaysMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_HighEndFlatPanelDisplaysMember_lbl1" xml:lang="en-US" id="plab_HighEndFlatPanelDisplaysMember_lbl1">High-end Flat Panel Displays [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndFlatPanelDisplaysMember" xlink:to="plab_HighEndFlatPanelDisplaysMember_lbl1" xlink:title="label: HighEndFlatPanelDisplaysMember to plab_HighEndFlatPanelDisplaysMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndFlatPanelDisplaysMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_HighEndFlatPanelDisplaysMember" xml:lang="en-US" id="plab_HighEndFlatPanelDisplaysMember">High-end [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndFlatPanelDisplaysMember" xlink:to="plab_HighEndFlatPanelDisplaysMember" xlink:title="label: HighEndFlatPanelDisplaysMember to plab_HighEndFlatPanelDisplaysMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamFlatPanelDisplaysMember" xlink:label="MainstreamFlatPanelDisplaysMember" xlink:title="MainstreamFlatPanelDisplaysMember" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamFlatPanelDisplaysMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MainstreamFlatPanelDisplaysMember_lbl" xml:lang="en-US" id="plab_MainstreamFlatPanelDisplaysMember_lbl">Represents the classification of products by performance.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamFlatPanelDisplaysMember" xlink:to="plab_MainstreamFlatPanelDisplaysMember_lbl" xlink:title="label: MainstreamFlatPanelDisplaysMember to plab_MainstreamFlatPanelDisplaysMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamFlatPanelDisplaysMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MainstreamFlatPanelDisplaysMember_lbl1" xml:lang="en-US" id="plab_MainstreamFlatPanelDisplaysMember_lbl1">Mainstream Flat Panel Displays [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamFlatPanelDisplaysMember" xlink:to="plab_MainstreamFlatPanelDisplaysMember_lbl1" xlink:title="label: MainstreamFlatPanelDisplaysMember to plab_MainstreamFlatPanelDisplaysMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamFlatPanelDisplaysMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_MainstreamFlatPanelDisplaysMember" xml:lang="en-US" id="plab_MainstreamFlatPanelDisplaysMember">Mainstream [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamFlatPanelDisplaysMember" xlink:to="plab_MainstreamFlatPanelDisplaysMember" xlink:title="label: MainstreamFlatPanelDisplaysMember to plab_MainstreamFlatPanelDisplaysMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IntegratedCircuitsMember" xlink:label="IntegratedCircuitsMember" xlink:title="IntegratedCircuitsMember" />
    <link:label xlink:type="resource" xlink:label="plab_IntegratedCircuitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_IntegratedCircuitsMember_lbl" xml:lang="en-US" id="plab_IntegratedCircuitsMember_lbl">Represents one of the products of the entity.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntegratedCircuitsMember" xlink:to="plab_IntegratedCircuitsMember_lbl" xlink:title="label: IntegratedCircuitsMember to plab_IntegratedCircuitsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_IntegratedCircuitsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_IntegratedCircuitsMember_lbl1" xml:lang="en-US" id="plab_IntegratedCircuitsMember_lbl1">Integrated Circuits [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntegratedCircuitsMember" xlink:to="plab_IntegratedCircuitsMember_lbl1" xlink:title="label: IntegratedCircuitsMember to plab_IntegratedCircuitsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_IntegratedCircuitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_IntegratedCircuitsMember" xml:lang="en-US" id="plab_IntegratedCircuitsMember">IC [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntegratedCircuitsMember" xlink:to="plab_IntegratedCircuitsMember" xlink:title="label: IntegratedCircuitsMember to plab_IntegratedCircuitsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndIntegratedCircuitsMember" xlink:label="HighEndIntegratedCircuitsMember" xlink:title="HighEndIntegratedCircuitsMember" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndIntegratedCircuitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_HighEndIntegratedCircuitsMember_lbl" xml:lang="en-US" id="plab_HighEndIntegratedCircuitsMember_lbl">Represents the classification of products by performance.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndIntegratedCircuitsMember" xlink:to="plab_HighEndIntegratedCircuitsMember_lbl" xlink:title="label: HighEndIntegratedCircuitsMember to plab_HighEndIntegratedCircuitsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndIntegratedCircuitsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_HighEndIntegratedCircuitsMember_lbl1" xml:lang="en-US" id="plab_HighEndIntegratedCircuitsMember_lbl1">High-end Integrated Circuits [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndIntegratedCircuitsMember" xlink:to="plab_HighEndIntegratedCircuitsMember_lbl1" xlink:title="label: HighEndIntegratedCircuitsMember to plab_HighEndIntegratedCircuitsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_HighEndIntegratedCircuitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_HighEndIntegratedCircuitsMember" xml:lang="en-US" id="plab_HighEndIntegratedCircuitsMember">High-end [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HighEndIntegratedCircuitsMember" xlink:to="plab_HighEndIntegratedCircuitsMember" xlink:title="label: HighEndIntegratedCircuitsMember to plab_HighEndIntegratedCircuitsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamIntegratedCircuitsMember" xlink:label="MainstreamIntegratedCircuitsMember" xlink:title="MainstreamIntegratedCircuitsMember" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamIntegratedCircuitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MainstreamIntegratedCircuitsMember_lbl" xml:lang="en-US" id="plab_MainstreamIntegratedCircuitsMember_lbl">Represents the classification of products by performance.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamIntegratedCircuitsMember" xlink:to="plab_MainstreamIntegratedCircuitsMember_lbl" xlink:title="label: MainstreamIntegratedCircuitsMember to plab_MainstreamIntegratedCircuitsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamIntegratedCircuitsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MainstreamIntegratedCircuitsMember_lbl1" xml:lang="en-US" id="plab_MainstreamIntegratedCircuitsMember_lbl1">Mainstream Integrated Circuits [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamIntegratedCircuitsMember" xlink:to="plab_MainstreamIntegratedCircuitsMember_lbl1" xlink:title="label: MainstreamIntegratedCircuitsMember to plab_MainstreamIntegratedCircuitsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MainstreamIntegratedCircuitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_MainstreamIntegratedCircuitsMember" xml:lang="en-US" id="plab_MainstreamIntegratedCircuitsMember">Mainstream [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MainstreamIntegratedCircuitsMember" xlink:to="plab_MainstreamIntegratedCircuitsMember" xlink:title="label: MainstreamIntegratedCircuitsMember to plab_MainstreamIntegratedCircuitsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OutstandingCommittedBalanceForCrossDefaultProvision" xlink:label="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="OutstandingCommittedBalanceForCrossDefaultProvision" />
    <link:label xlink:type="resource" xlink:label="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl" xml:lang="en-US" id="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl">Committed balance outstanding for cross default provision for any agreement or instrument.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:to="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl" xlink:title="label: OutstandingCommittedBalanceForCrossDefaultProvision to plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl1" xml:lang="en-US" id="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl1">Outstanding Committed Balance for Cross Default Provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:to="plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl1" xlink:title="label: OutstandingCommittedBalanceForCrossDefaultProvision to plab_OutstandingCommittedBalanceForCrossDefaultProvision_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_OutstandingCommittedBalanceForCrossDefaultProvision" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_OutstandingCommittedBalanceForCrossDefaultProvision" xml:lang="en-US" id="plab_OutstandingCommittedBalanceForCrossDefaultProvision">Outstanding committed balance for cross default provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:to="plab_OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="label: OutstandingCommittedBalanceForCrossDefaultProvision to plab_OutstandingCommittedBalanceForCrossDefaultProvision" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseMember" xlink:label="FinanceLeaseMember" xlink:title="FinanceLeaseMember" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FinanceLeaseMember_lbl" xml:lang="en-US" id="plab_FinanceLeaseMember_lbl">The obligation for lease payments from finance lease.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseMember" xlink:to="plab_FinanceLeaseMember_lbl" xlink:title="label: FinanceLeaseMember to plab_FinanceLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FinanceLeaseMember_lbl1" xml:lang="en-US" id="plab_FinanceLeaseMember_lbl1">Finance Lease [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseMember" xlink:to="plab_FinanceLeaseMember_lbl1" xlink:title="label: FinanceLeaseMember to plab_FinanceLeaseMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FinanceLeaseMember" xml:lang="en-US" id="plab_FinanceLeaseMember">Finance Leases [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseMember" xlink:to="plab_FinanceLeaseMember" xlink:title="label: FinanceLeaseMember to plab_FinanceLeaseMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Seven2MillionFinanceLeaseMember" xlink:label="Seven2MillionFinanceLeaseMember" xlink:title="Seven2MillionFinanceLeaseMember" />
    <link:label xlink:type="resource" xlink:label="plab_Seven2MillionFinanceLeaseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_Seven2MillionFinanceLeaseMember_lbl" xml:lang="en-US" id="plab_Seven2MillionFinanceLeaseMember_lbl">Refers to the $7.2 million finance lease.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Seven2MillionFinanceLeaseMember" xlink:to="plab_Seven2MillionFinanceLeaseMember_lbl" xlink:title="label: Seven2MillionFinanceLeaseMember to plab_Seven2MillionFinanceLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_Seven2MillionFinanceLeaseMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_Seven2MillionFinanceLeaseMember_lbl1" xml:lang="en-US" id="plab_Seven2MillionFinanceLeaseMember_lbl1">7.2 Million Finance Lease [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Seven2MillionFinanceLeaseMember" xlink:to="plab_Seven2MillionFinanceLeaseMember_lbl1" xlink:title="label: Seven2MillionFinanceLeaseMember to plab_Seven2MillionFinanceLeaseMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_Seven2MillionFinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_Seven2MillionFinanceLeaseMember" xml:lang="en-US" id="plab_Seven2MillionFinanceLeaseMember">$7.2 Million Finance Lease [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Seven2MillionFinanceLeaseMember" xlink:to="plab_Seven2MillionFinanceLeaseMember" xlink:title="label: Seven2MillionFinanceLeaseMember to plab_Seven2MillionFinanceLeaseMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Three55MillionFinanceLeaseMember" xlink:label="Three55MillionFinanceLeaseMember" xlink:title="Three55MillionFinanceLeaseMember" />
    <link:label xlink:type="resource" xlink:label="plab_Three55MillionFinanceLeaseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_Three55MillionFinanceLeaseMember_lbl" xml:lang="en-US" id="plab_Three55MillionFinanceLeaseMember_lbl">Refers to the $35.5 million finance lease.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Three55MillionFinanceLeaseMember" xlink:to="plab_Three55MillionFinanceLeaseMember_lbl" xlink:title="label: Three55MillionFinanceLeaseMember to plab_Three55MillionFinanceLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_Three55MillionFinanceLeaseMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_Three55MillionFinanceLeaseMember_lbl1" xml:lang="en-US" id="plab_Three55MillionFinanceLeaseMember_lbl1">35.5 Million Finance Lease [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Three55MillionFinanceLeaseMember" xlink:to="plab_Three55MillionFinanceLeaseMember_lbl1" xlink:title="label: Three55MillionFinanceLeaseMember to plab_Three55MillionFinanceLeaseMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_Three55MillionFinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_Three55MillionFinanceLeaseMember" xml:lang="en-US" id="plab_Three55MillionFinanceLeaseMember">$35.5 Million Finance Lease [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Three55MillionFinanceLeaseMember" xlink:to="plab_Three55MillionFinanceLeaseMember" xlink:title="label: Three55MillionFinanceLeaseMember to plab_Three55MillionFinanceLeaseMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MonthlyMember" xlink:label="MonthlyMember" xlink:title="MonthlyMember" />
    <link:label xlink:type="resource" xlink:label="plab_MonthlyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MonthlyMember_lbl" xml:lang="en-US" id="plab_MonthlyMember_lbl">Finance lease monthly payments.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MonthlyMember" xlink:to="plab_MonthlyMember_lbl" xlink:title="label: MonthlyMember to plab_MonthlyMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MonthlyMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MonthlyMember_lbl1" xml:lang="en-US" id="plab_MonthlyMember_lbl1">Monthly [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MonthlyMember" xlink:to="plab_MonthlyMember_lbl1" xlink:title="label: MonthlyMember to plab_MonthlyMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MonthlyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_MonthlyMember" xml:lang="en-US" id="plab_MonthlyMember">Monthly [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MonthlyMember" xlink:to="plab_MonthlyMember" xlink:title="label: MonthlyMember to plab_MonthlyMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowedByThirtySixMonthsMember" xlink:label="FollowedByThirtySixMonthsMember" xlink:title="FollowedByThirtySixMonthsMember" />
    <link:label xlink:type="resource" xlink:label="plab_FollowedByThirtySixMonthsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FollowedByThirtySixMonthsMember_lbl" xml:lang="en-US" id="plab_FollowedByThirtySixMonthsMember_lbl">Finance lease monthly payments for the following thirty six months period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowedByThirtySixMonthsMember" xlink:to="plab_FollowedByThirtySixMonthsMember_lbl" xlink:title="label: FollowedByThirtySixMonthsMember to plab_FollowedByThirtySixMonthsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FollowedByThirtySixMonthsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FollowedByThirtySixMonthsMember_lbl1" xml:lang="en-US" id="plab_FollowedByThirtySixMonthsMember_lbl1">Followed by Thirty Six Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowedByThirtySixMonthsMember" xlink:to="plab_FollowedByThirtySixMonthsMember_lbl1" xlink:title="label: FollowedByThirtySixMonthsMember to plab_FollowedByThirtySixMonthsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FollowedByThirtySixMonthsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FollowedByThirtySixMonthsMember" xml:lang="en-US" id="plab_FollowedByThirtySixMonthsMember">Forty Eight Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowedByThirtySixMonthsMember" xlink:to="plab_FollowedByThirtySixMonthsMember" xlink:title="label: FollowedByThirtySixMonthsMember to plab_FollowedByThirtySixMonthsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FirstThreeMonthsMember" xlink:label="FirstThreeMonthsMember" xlink:title="FirstThreeMonthsMember" />
    <link:label xlink:type="resource" xlink:label="plab_FirstThreeMonthsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FirstThreeMonthsMember_lbl" xml:lang="en-US" id="plab_FirstThreeMonthsMember_lbl">Finance lease monthly payment for three months period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FirstThreeMonthsMember" xlink:to="plab_FirstThreeMonthsMember_lbl" xlink:title="label: FirstThreeMonthsMember to plab_FirstThreeMonthsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FirstThreeMonthsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FirstThreeMonthsMember_lbl1" xml:lang="en-US" id="plab_FirstThreeMonthsMember_lbl1">First Three Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FirstThreeMonthsMember" xlink:to="plab_FirstThreeMonthsMember_lbl1" xlink:title="label: FirstThreeMonthsMember to plab_FirstThreeMonthsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FirstThreeMonthsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FirstThreeMonthsMember" xml:lang="en-US" id="plab_FirstThreeMonthsMember">First Three Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FirstThreeMonthsMember" xlink:to="plab_FirstThreeMonthsMember" xlink:title="label: FirstThreeMonthsMember to plab_FirstThreeMonthsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowingNineMonthsMember" xlink:label="FollowingNineMonthsMember" xlink:title="FollowingNineMonthsMember" />
    <link:label xlink:type="resource" xlink:label="plab_FollowingNineMonthsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FollowingNineMonthsMember_lbl" xml:lang="en-US" id="plab_FollowingNineMonthsMember_lbl">Finance lease monthly payments for the following nine months period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowingNineMonthsMember" xlink:to="plab_FollowingNineMonthsMember_lbl" xlink:title="label: FollowingNineMonthsMember to plab_FollowingNineMonthsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FollowingNineMonthsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FollowingNineMonthsMember_lbl1" xml:lang="en-US" id="plab_FollowingNineMonthsMember_lbl1">Following Nine Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowingNineMonthsMember" xlink:to="plab_FollowingNineMonthsMember_lbl1" xlink:title="label: FollowingNineMonthsMember to plab_FollowingNineMonthsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FollowingNineMonthsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FollowingNineMonthsMember" xml:lang="en-US" id="plab_FollowingNineMonthsMember">Following Nine Months [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FollowingNineMonthsMember" xlink:to="plab_FollowingNineMonthsMember" xlink:title="label: FollowingNineMonthsMember to plab_FollowingNineMonthsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductInvoiceTerm" xlink:label="ProductInvoiceTerm" xlink:title="ProductInvoiceTerm" />
    <link:label xlink:type="resource" xlink:label="plab_ProductInvoiceTerm_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ProductInvoiceTerm_lbl" xml:lang="en-US" id="plab_ProductInvoiceTerm_lbl">The term of the product invoiced for payment settlement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductInvoiceTerm" xlink:to="plab_ProductInvoiceTerm_lbl" xlink:title="label: ProductInvoiceTerm to plab_ProductInvoiceTerm_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ProductInvoiceTerm_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ProductInvoiceTerm_lbl1" xml:lang="en-US" id="plab_ProductInvoiceTerm_lbl1">Product Invoice Term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductInvoiceTerm" xlink:to="plab_ProductInvoiceTerm_lbl1" xlink:title="label: ProductInvoiceTerm to plab_ProductInvoiceTerm_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ProductInvoiceTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ProductInvoiceTerm" xml:lang="en-US" id="plab_ProductInvoiceTerm">Product invoice term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductInvoiceTerm" xlink:to="plab_ProductInvoiceTerm" xlink:title="label: ProductInvoiceTerm to plab_ProductInvoiceTerm" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_InterestExpenseNetOfSubsidies" xlink:label="InterestExpenseNetOfSubsidies" xlink:title="InterestExpenseNetOfSubsidies" />
    <link:label xlink:type="resource" xlink:label="plab_InterestExpenseNetOfSubsidies_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_InterestExpenseNetOfSubsidies_lbl" xml:lang="en-US" id="plab_InterestExpenseNetOfSubsidies_lbl">Amount represents interest and debt expense, net of subsidies received.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestExpenseNetOfSubsidies" xlink:to="plab_InterestExpenseNetOfSubsidies_lbl" xlink:title="label: InterestExpenseNetOfSubsidies to plab_InterestExpenseNetOfSubsidies_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_InterestExpenseNetOfSubsidies_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_InterestExpenseNetOfSubsidies_lbl1" xml:lang="en-US" id="plab_InterestExpenseNetOfSubsidies_lbl1">Interest Expense Net of Subsidies</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestExpenseNetOfSubsidies" xlink:to="plab_InterestExpenseNetOfSubsidies_lbl1" xlink:title="label: InterestExpenseNetOfSubsidies to plab_InterestExpenseNetOfSubsidies_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_InterestExpenseNetOfSubsidies" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="plab_InterestExpenseNetOfSubsidies" xml:lang="en-US" id="plab_InterestExpenseNetOfSubsidies">Interest expense, net of subsidies</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestExpenseNetOfSubsidies" xlink:to="plab_InterestExpenseNetOfSubsidies" xlink:title="label: InterestExpenseNetOfSubsidies to plab_InterestExpenseNetOfSubsidies" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:label="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:title="MinimumAgeOfEmployeesToComeUnderRetirementPlan" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl" xml:lang="en-US" id="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl">Represents the minimum age of employees to come under retirement plan.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:to="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl" xlink:title="label: MinimumAgeOfEmployeesToComeUnderRetirementPlan to plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl1" xml:lang="en-US" id="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl1">Minimum age of employees to come under retirement plan</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:to="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl1" xlink:title="label: MinimumAgeOfEmployeesToComeUnderRetirementPlan to plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" xml:lang="en-US" id="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan">Minimum age of employees to come under retirement plan</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:to="plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:title="label: MinimumAgeOfEmployeesToComeUnderRetirementPlan to plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfMonthsOfServiceCompleted" xlink:label="NumberOfMonthsOfServiceCompleted" xlink:title="NumberOfMonthsOfServiceCompleted" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfMonthsOfServiceCompleted_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NumberOfMonthsOfServiceCompleted_lbl" xml:lang="en-US" id="plab_NumberOfMonthsOfServiceCompleted_lbl">Represents the number of months of service completed to come under retirement plans.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfMonthsOfServiceCompleted" xlink:to="plab_NumberOfMonthsOfServiceCompleted_lbl" xlink:title="label: NumberOfMonthsOfServiceCompleted to plab_NumberOfMonthsOfServiceCompleted_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfMonthsOfServiceCompleted_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NumberOfMonthsOfServiceCompleted_lbl1" xml:lang="en-US" id="plab_NumberOfMonthsOfServiceCompleted_lbl1">Number of months of service completed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfMonthsOfServiceCompleted" xlink:to="plab_NumberOfMonthsOfServiceCompleted_lbl1" xlink:title="label: NumberOfMonthsOfServiceCompleted to plab_NumberOfMonthsOfServiceCompleted_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfMonthsOfServiceCompleted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_NumberOfMonthsOfServiceCompleted" xml:lang="en-US" id="plab_NumberOfMonthsOfServiceCompleted">Number of months of service completed to come under retirement plan</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfMonthsOfServiceCompleted" xlink:to="plab_NumberOfMonthsOfServiceCompleted" xlink:title="label: NumberOfMonthsOfServiceCompleted to plab_NumberOfMonthsOfServiceCompleted" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:label="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:title="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl" xml:lang="en-US" id="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl">Tabular disclosure of unrecognized tax benefits.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:to="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl" xlink:title="label: ScheduleOfUnrecognizedTaxBenefitsTableTextBlock to plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl1" xml:lang="en-US" id="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl1">Schedule Of Unrecognized Tax Benefits [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:to="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl1" xlink:title="label: ScheduleOfUnrecognizedTaxBenefitsTableTextBlock to plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xml:lang="en-US" id="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock">Unrecognized Tax Benefits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:to="plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:title="label: ScheduleOfUnrecognizedTaxBenefitsTableTextBlock to plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:label="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:title="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl" xml:lang="en-US" id="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl">Tabular disclosure of income taxes paid and refunds.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:to="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl" xlink:title="label: ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock to plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl1" xml:lang="en-US" id="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl1">Schedule of Income Taxes Paid and Refunds [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:to="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl1" xlink:title="label: ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock to plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xml:lang="en-US" id="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock">Income Tax Payments and Refunds</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:to="plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:title="label: ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock to plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:label="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" />
    <link:label xlink:type="resource" xlink:label="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl" xml:lang="en-US" id="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl">Net of tax amount of the appreciation (loss) for other adjustments.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:to="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl" xlink:title="label: OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax to plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl1" xml:lang="en-US" id="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl1">Other Comprehensive Income (Loss), Other Adjustments, Net of Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:to="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl1" xlink:title="label: OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax to plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xml:lang="en-US" id="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax">Other</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:to="plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="label: OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax to plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareRepurchaseProgramsMember" xlink:label="ShareRepurchaseProgramsMember" xlink:title="ShareRepurchaseProgramsMember" />
    <link:label xlink:type="resource" xlink:label="plab_ShareRepurchaseProgramsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ShareRepurchaseProgramsMember_lbl" xml:lang="en-US" id="plab_ShareRepurchaseProgramsMember_lbl">Shares repurchased as part of a share repurchase program.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramsMember" xlink:to="plab_ShareRepurchaseProgramsMember_lbl" xlink:title="label: ShareRepurchaseProgramsMember to plab_ShareRepurchaseProgramsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ShareRepurchaseProgramsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareRepurchaseProgramsMember_lbl1" xml:lang="en-US" id="plab_ShareRepurchaseProgramsMember_lbl1">Share Repurchase Programs [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramsMember" xlink:to="plab_ShareRepurchaseProgramsMember_lbl1" xlink:title="label: ShareRepurchaseProgramsMember to plab_ShareRepurchaseProgramsMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_September2020AnnouncedProgramMember" xlink:label="September2020AnnouncedProgramMember" xlink:title="September2020AnnouncedProgramMember" />
    <link:label xlink:type="resource" xlink:label="plab_September2020AnnouncedProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_September2020AnnouncedProgramMember_lbl" xml:lang="en-US" id="plab_September2020AnnouncedProgramMember_lbl">The September 2020 announced program.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="September2020AnnouncedProgramMember" xlink:to="plab_September2020AnnouncedProgramMember_lbl" xlink:title="label: September2020AnnouncedProgramMember to plab_September2020AnnouncedProgramMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_September2020AnnouncedProgramMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_September2020AnnouncedProgramMember_lbl1" xml:lang="en-US" id="plab_September2020AnnouncedProgramMember_lbl1">September 2020 Announced Program [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="September2020AnnouncedProgramMember" xlink:to="plab_September2020AnnouncedProgramMember_lbl1" xlink:title="label: September2020AnnouncedProgramMember to plab_September2020AnnouncedProgramMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockRepurchaseProgramCommencementDate" xlink:label="StockRepurchaseProgramCommencementDate" xlink:title="StockRepurchaseProgramCommencementDate" />
    <link:label xlink:type="resource" xlink:label="plab_StockRepurchaseProgramCommencementDate_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_StockRepurchaseProgramCommencementDate_lbl" xml:lang="en-US" id="plab_StockRepurchaseProgramCommencementDate_lbl">Date when authorized share repurchase program commenced, in CCYY-MM-DD format.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramCommencementDate" xlink:to="plab_StockRepurchaseProgramCommencementDate_lbl" xlink:title="label: StockRepurchaseProgramCommencementDate to plab_StockRepurchaseProgramCommencementDate_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_StockRepurchaseProgramCommencementDate_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_StockRepurchaseProgramCommencementDate_lbl1" xml:lang="en-US" id="plab_StockRepurchaseProgramCommencementDate_lbl1">Stock Repurchase Program Commencement Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramCommencementDate" xlink:to="plab_StockRepurchaseProgramCommencementDate_lbl1" xlink:title="label: StockRepurchaseProgramCommencementDate to plab_StockRepurchaseProgramCommencementDate_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_StockRepurchaseProgramCommencementDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_StockRepurchaseProgramCommencementDate" xml:lang="en-US" id="plab_StockRepurchaseProgramCommencementDate">Stock repurchase program - commencement date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramCommencementDate" xlink:to="plab_StockRepurchaseProgramCommencementDate" xlink:title="label: StockRepurchaseProgramCommencementDate to plab_StockRepurchaseProgramCommencementDate" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PrepaidAndRefundableIncomeTaxes" xlink:label="PrepaidAndRefundableIncomeTaxes" xlink:title="PrepaidAndRefundableIncomeTaxes" />
    <link:label xlink:type="resource" xlink:label="plab_PrepaidAndRefundableIncomeTaxes_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_PrepaidAndRefundableIncomeTaxes_lbl" xml:lang="en-US" id="plab_PrepaidAndRefundableIncomeTaxes_lbl">The amount of prepaid and refundable income taxes classified as current.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidAndRefundableIncomeTaxes" xlink:to="plab_PrepaidAndRefundableIncomeTaxes_lbl" xlink:title="label: PrepaidAndRefundableIncomeTaxes to plab_PrepaidAndRefundableIncomeTaxes_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_PrepaidAndRefundableIncomeTaxes_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PrepaidAndRefundableIncomeTaxes_lbl1" xml:lang="en-US" id="plab_PrepaidAndRefundableIncomeTaxes_lbl1">Prepaid and Refundable Income Taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidAndRefundableIncomeTaxes" xlink:to="plab_PrepaidAndRefundableIncomeTaxes_lbl1" xlink:title="label: PrepaidAndRefundableIncomeTaxes to plab_PrepaidAndRefundableIncomeTaxes_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_PrepaidAndRefundableIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_PrepaidAndRefundableIncomeTaxes" xml:lang="en-US" id="plab_PrepaidAndRefundableIncomeTaxes">Prepaid and refundable income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidAndRefundableIncomeTaxes" xlink:to="plab_PrepaidAndRefundableIncomeTaxes" xlink:title="label: PrepaidAndRefundableIncomeTaxes to plab_PrepaidAndRefundableIncomeTaxes" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:label="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:title="FederalInvestmentTaxCreditsRefundReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl" xml:lang="en-US" id="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl">The receivable amount of federal investment tax credits refund expected to be realized or consumed within one year or operating cycle, if longer.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:to="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl" xlink:title="label: FederalInvestmentTaxCreditsRefundReceivableCurrent to plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl1" xml:lang="en-US" id="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl1">Federal Investment Tax Credits Refund Receivable, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:to="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl1" xlink:title="label: FederalInvestmentTaxCreditsRefundReceivableCurrent to plab_FederalInvestmentTaxCreditsRefundReceivableCurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" xml:lang="en-US" id="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent">Expected tax credits receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:to="plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:title="label: FederalInvestmentTaxCreditsRefundReceivableCurrent to plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:label="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract_lbl1" xml:lang="en-US" id="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract_lbl1">Variable Interest Entity, Consolidated, Carrying Amount, Assets, Liabilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract_lbl1" xlink:title="label: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xml:lang="en-US" id="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract">Carrying amounts of assets and liabilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="label: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PDMCXMember" xlink:label="PDMCXMember" xlink:title="PDMCXMember" />
    <link:label xlink:type="resource" xlink:label="plab_PDMCXMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_PDMCXMember_lbl" xml:lang="en-US" id="plab_PDMCXMember_lbl">The joint venture.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PDMCXMember" xlink:to="plab_PDMCXMember_lbl" xlink:title="label: PDMCXMember to plab_PDMCXMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_PDMCXMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PDMCXMember_lbl1" xml:lang="en-US" id="plab_PDMCXMember_lbl1">PDMCX [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PDMCXMember" xlink:to="plab_PDMCXMember_lbl1" xlink:title="label: PDMCXMember to plab_PDMCXMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_PDMCXMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_PDMCXMember" xml:lang="en-US" id="plab_PDMCXMember">Carrying Amount [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PDMCXMember" xlink:to="plab_PDMCXMember" xlink:title="label: PDMCXMember to plab_PDMCXMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PhotronicsAndDNPMember" xlink:label="PhotronicsAndDNPMember" xlink:title="PhotronicsAndDNPMember" />
    <link:label xlink:type="resource" xlink:label="plab_PhotronicsAndDNPMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_PhotronicsAndDNPMember_lbl" xml:lang="en-US" id="plab_PhotronicsAndDNPMember_lbl">The joint venture.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PhotronicsAndDNPMember" xlink:to="plab_PhotronicsAndDNPMember_lbl" xlink:title="label: PhotronicsAndDNPMember to plab_PhotronicsAndDNPMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_PhotronicsAndDNPMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PhotronicsAndDNPMember_lbl1" xml:lang="en-US" id="plab_PhotronicsAndDNPMember_lbl1">Photronics and DNP [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PhotronicsAndDNPMember" xlink:to="plab_PhotronicsAndDNPMember_lbl1" xlink:title="label: PhotronicsAndDNPMember to plab_PhotronicsAndDNPMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityAbstract" xlink:label="VariableInterestEntityAbstract" xlink:title="VariableInterestEntityAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_VariableInterestEntityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_VariableInterestEntityAbstract_lbl1" xml:lang="en-US" id="plab_VariableInterestEntityAbstract_lbl1">Variable Interest Entity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityAbstract" xlink:to="plab_VariableInterestEntityAbstract_lbl1" xlink:title="label: VariableInterestEntityAbstract to plab_VariableInterestEntityAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_VariableInterestEntityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_VariableInterestEntityAbstract" xml:lang="en-US" id="plab_VariableInterestEntityAbstract">Variable Interest Entities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableInterestEntityAbstract" xlink:to="plab_VariableInterestEntityAbstract" xlink:title="label: VariableInterestEntityAbstract to plab_VariableInterestEntityAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:label="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl" xml:lang="en-US" id="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl">Refers to minimum number of business days for obtaining required approvals and clearance for exiting party from the agreement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:to="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl" xlink:title="label: NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty to plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl1" xml:lang="en-US" id="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl1">Number of Business Days for Obtaining Required Approvals and Clearance for Exiting Party</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:to="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl1" xlink:title="label: NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty to plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xml:lang="en-US" id="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty">Number of business days for obtaining required approvals and clearance for exiting party</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:to="plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="label: NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty to plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:label="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl" xml:lang="en-US" id="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl">Number of consecutive months an investor's ownership can be below 20% before an option to put or purchase the investor's ownership interest may be exercised, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:to="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl" xlink:title="label: NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised to plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl1" xml:lang="en-US" id="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl1">Number of Consecutive Months Ownership Interest may Fall Below Twenty Percent For Put or Purchase Options to be Exercised</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:to="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl1" xlink:title="label: NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised to plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xml:lang="en-US" id="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised">Period before put or purchase option can be exercised</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:to="plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="label: NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised to plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DepreciationAndAmortizationExpenseTableTextBlock" xlink:label="DepreciationAndAmortizationExpenseTableTextBlock" xlink:title="DepreciationAndAmortizationExpenseTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US" id="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl">Tabular disclosure of depreciation expense including the amortization of right of use assets.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationAndAmortizationExpenseTableTextBlock" xlink:to="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl" xlink:title="label: DepreciationAndAmortizationExpenseTableTextBlock to plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl1" xml:lang="en-US" id="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl1">Depreciation and Amortization Expense [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationAndAmortizationExpenseTableTextBlock" xlink:to="plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl1" xlink:title="label: DepreciationAndAmortizationExpenseTableTextBlock to plab_DepreciationAndAmortizationExpenseTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_DepreciationAndAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_DepreciationAndAmortizationExpenseTableTextBlock" xml:lang="en-US" id="plab_DepreciationAndAmortizationExpenseTableTextBlock">Depreciation Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationAndAmortizationExpenseTableTextBlock" xlink:to="plab_DepreciationAndAmortizationExpenseTableTextBlock" xlink:title="label: DepreciationAndAmortizationExpenseTableTextBlock to plab_DepreciationAndAmortizationExpenseTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:label="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:title="FinanceLeaseRightOfUseAssetsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl" xml:lang="en-US" id="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl">Tabular disclosure of right-of-use assets resulting from finance leases.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:to="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl" xlink:title="label: FinanceLeaseRightOfUseAssetsTableTextBlock to plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl1" xml:lang="en-US" id="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl1">Finance Lease Right of use Assets [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:to="plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl1" xlink:title="label: FinanceLeaseRightOfUseAssetsTableTextBlock to plab_FinanceLeaseRightOfUseAssetsTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FinanceLeaseRightOfUseAssetsTableTextBlock" xml:lang="en-US" id="plab_FinanceLeaseRightOfUseAssetsTableTextBlock">Information on ROU Assets from Finance Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:to="plab_FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:title="label: FinanceLeaseRightOfUseAssetsTableTextBlock to plab_FinanceLeaseRightOfUseAssetsTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_RelatedPartyAgreementAbstract" xlink:label="RelatedPartyAgreementAbstract" xlink:title="RelatedPartyAgreementAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_RelatedPartyAgreementAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_RelatedPartyAgreementAbstract_lbl1" xml:lang="en-US" id="plab_RelatedPartyAgreementAbstract_lbl1">Related Party Agreement [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyAgreementAbstract" xlink:to="plab_RelatedPartyAgreementAbstract_lbl1" xlink:title="label: RelatedPartyAgreementAbstract to plab_RelatedPartyAgreementAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_RelatedPartyAgreementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_RelatedPartyAgreementAbstract" xml:lang="en-US" id="plab_RelatedPartyAgreementAbstract">Related Party Agreement [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RelatedPartyAgreementAbstract" xlink:to="plab_RelatedPartyAgreementAbstract" xlink:title="label: RelatedPartyAgreementAbstract to plab_RelatedPartyAgreementAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MajorCustomer1Member" xlink:label="MajorCustomer1Member" xlink:title="MajorCustomer1Member" />
    <link:label xlink:type="resource" xlink:label="plab_MajorCustomer1Member_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MajorCustomer1Member_lbl" xml:lang="en-US" id="plab_MajorCustomer1Member_lbl">Represents a major customer of the Company.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MajorCustomer1Member" xlink:to="plab_MajorCustomer1Member_lbl" xlink:title="label: MajorCustomer1Member to plab_MajorCustomer1Member_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MajorCustomer1Member_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MajorCustomer1Member_lbl1" xml:lang="en-US" id="plab_MajorCustomer1Member_lbl1">Major customer 1 [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MajorCustomer1Member" xlink:to="plab_MajorCustomer1Member_lbl1" xlink:title="label: MajorCustomer1Member to plab_MajorCustomer1Member_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MajorCustomer1Member" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="plab_MajorCustomer1Member" xml:lang="en-US" id="plab_MajorCustomer1Member">Customer One [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MajorCustomer1Member" xlink:to="plab_MajorCustomer1Member" xlink:title="label: MajorCustomer1Member to plab_MajorCustomer1Member" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedServicesContractedCurrent" xlink:label="AccruedServicesContractedCurrent" xlink:title="AccruedServicesContractedCurrent" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedServicesContractedCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccruedServicesContractedCurrent_lbl" xml:lang="en-US" id="plab_AccruedServicesContractedCurrent_lbl">Carrying value as of the balance sheet date of the obligations incurred through that date and payable for contracted services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedServicesContractedCurrent" xlink:to="plab_AccruedServicesContractedCurrent_lbl" xlink:title="label: AccruedServicesContractedCurrent to plab_AccruedServicesContractedCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedServicesContractedCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccruedServicesContractedCurrent_lbl1" xml:lang="en-US" id="plab_AccruedServicesContractedCurrent_lbl1">Accrued Services Contracted, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedServicesContractedCurrent" xlink:to="plab_AccruedServicesContractedCurrent_lbl1" xlink:title="label: AccruedServicesContractedCurrent to plab_AccruedServicesContractedCurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedServicesContractedCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_AccruedServicesContractedCurrent" xml:lang="en-US" id="plab_AccruedServicesContractedCurrent">Service Contracts</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedServicesContractedCurrent" xlink:to="plab_AccruedServicesContractedCurrent" xlink:title="label: AccruedServicesContractedCurrent to plab_AccruedServicesContractedCurrent" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedOperatingLeasesCurrent" xlink:label="AccruedOperatingLeasesCurrent" xlink:title="AccruedOperatingLeasesCurrent" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedOperatingLeasesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccruedOperatingLeasesCurrent_lbl" xml:lang="en-US" id="plab_AccruedOperatingLeasesCurrent_lbl">Amount of expenses incurred, but not yet billed, for operating leases, due within one year or the normal operating cycle, if longer.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedOperatingLeasesCurrent" xlink:to="plab_AccruedOperatingLeasesCurrent_lbl" xlink:title="label: AccruedOperatingLeasesCurrent to plab_AccruedOperatingLeasesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedOperatingLeasesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccruedOperatingLeasesCurrent_lbl1" xml:lang="en-US" id="plab_AccruedOperatingLeasesCurrent_lbl1">Accrued Operating Leases, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedOperatingLeasesCurrent" xlink:to="plab_AccruedOperatingLeasesCurrent_lbl1" xlink:title="label: AccruedOperatingLeasesCurrent to plab_AccruedOperatingLeasesCurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedOperatingLeasesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="plab_AccruedOperatingLeasesCurrent" xml:lang="en-US" id="plab_AccruedOperatingLeasesCurrent">Operating leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedOperatingLeasesCurrent" xlink:to="plab_AccruedOperatingLeasesCurrent" xlink:title="label: AccruedOperatingLeasesCurrent to plab_AccruedOperatingLeasesCurrent" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedPropertyPlantAndEquipmentCurrent" xlink:label="AccruedPropertyPlantAndEquipmentCurrent" xlink:title="AccruedPropertyPlantAndEquipmentCurrent" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl" xml:lang="en-US" id="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl">Amount of expenses incurred, but not yet billed, for property, plant and equipment, due within one year or the normal operating cycle, if longer.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedPropertyPlantAndEquipmentCurrent" xlink:to="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl" xlink:title="label: AccruedPropertyPlantAndEquipmentCurrent to plab_AccruedPropertyPlantAndEquipmentCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl1" xml:lang="en-US" id="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl1">Accrued Property, Plant, and Equipment, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedPropertyPlantAndEquipmentCurrent" xlink:to="plab_AccruedPropertyPlantAndEquipmentCurrent_lbl1" xlink:title="label: AccruedPropertyPlantAndEquipmentCurrent to plab_AccruedPropertyPlantAndEquipmentCurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccruedPropertyPlantAndEquipmentCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_AccruedPropertyPlantAndEquipmentCurrent" xml:lang="en-US" id="plab_AccruedPropertyPlantAndEquipmentCurrent">Property, plant, and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedPropertyPlantAndEquipmentCurrent" xlink:to="plab_AccruedPropertyPlantAndEquipmentCurrent" xlink:title="label: AccruedPropertyPlantAndEquipmentCurrent to plab_AccruedPropertyPlantAndEquipmentCurrent" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:label="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:title="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl" xml:lang="en-US" id="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl">Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined).</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:to="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl" xlink:title="label: ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock to plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl1" xml:lang="en-US" id="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl1">Consolidation, Joint Venture Variable Interest Entity, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:to="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl1" xlink:title="label: ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock to plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xml:lang="en-US" id="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock">Variable Interest Entities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:to="plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:title="label: ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock to plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl">The cumulative number of shares that have been issued since the inception of the Company's employee stock purchase plan.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl1">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Cumulative Shares Issued</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued">Total shares issued since inception (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl">The number as of the balance sheet date of outstanding restricted stock awards that are expected to vest.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl1">Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other than Options, Expected to Vest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest">Expected to vest (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl">The weighted-average fair value at grant date of restricted stock that is expected to vest.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl1">Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Expected to Vest, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue">Expected to vest (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockOptionsActivityAbstract" xlink:label="StockOptionsActivityAbstract" xlink:title="StockOptionsActivityAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_StockOptionsActivityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_StockOptionsActivityAbstract_lbl1" xml:lang="en-US" id="plab_StockOptionsActivityAbstract_lbl1">Stock options activity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockOptionsActivityAbstract" xlink:to="plab_StockOptionsActivityAbstract_lbl1" xlink:title="label: StockOptionsActivityAbstract to plab_StockOptionsActivityAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_StockOptionsActivityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_StockOptionsActivityAbstract" xml:lang="en-US" id="plab_StockOptionsActivityAbstract">Stock Options Activity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockOptionsActivityAbstract" xlink:to="plab_StockOptionsActivityAbstract" xlink:title="label: StockOptionsActivityAbstract to plab_StockOptionsActivityAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl1">Share based Compensation Arrangement by Share based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract">Aggregate Intrinsic Value [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract_lbl1">Share based Compensation Arrangement by Share based Payment Award Options Weighted Average Remaining Contractual Term [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract">Weighted-Average Remaining Contractual Life [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl">The number of shares under options that were cancelled, forfeited, or adjusted during the reporting period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl1" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Cancellations, Forfeitures and Adjustments in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xml:lang="en-US" id="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod">Cancellations, forfeitures, and adjustments (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:to="plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod to plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfExecutivesDeparted" xlink:label="NumberOfExecutivesDeparted" xlink:title="NumberOfExecutivesDeparted" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfExecutivesDeparted_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NumberOfExecutivesDeparted_lbl" xml:lang="en-US" id="plab_NumberOfExecutivesDeparted_lbl">Number of senior executives departed from the company during the period.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfExecutivesDeparted" xlink:to="plab_NumberOfExecutivesDeparted_lbl" xlink:title="label: NumberOfExecutivesDeparted to plab_NumberOfExecutivesDeparted_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfExecutivesDeparted_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NumberOfExecutivesDeparted_lbl1" xml:lang="en-US" id="plab_NumberOfExecutivesDeparted_lbl1">Number of Executives Departed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfExecutivesDeparted" xlink:to="plab_NumberOfExecutivesDeparted_lbl1" xlink:title="label: NumberOfExecutivesDeparted to plab_NumberOfExecutivesDeparted_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfExecutivesDeparted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_NumberOfExecutivesDeparted" xml:lang="en-US" id="plab_NumberOfExecutivesDeparted">Number of executives departed from company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfExecutivesDeparted" xlink:to="plab_NumberOfExecutivesDeparted" xlink:title="label: NumberOfExecutivesDeparted to plab_NumberOfExecutivesDeparted" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EmployeeStockPurchasePlanPolicyTextBlock" xlink:label="EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="EmployeeStockPurchasePlanPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl" xml:lang="en-US" id="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl">Disclosure of accounting policy for Employee Stock Purchase Plan.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockPurchasePlanPolicyTextBlock" xlink:to="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl" xlink:title="label: EmployeeStockPurchasePlanPolicyTextBlock to plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl1" xml:lang="en-US" id="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl1">Employee Stock Purchase Plan [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockPurchasePlanPolicyTextBlock" xlink:to="plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl1" xlink:title="label: EmployeeStockPurchasePlanPolicyTextBlock to plab_EmployeeStockPurchasePlanPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_EmployeeStockPurchasePlanPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_EmployeeStockPurchasePlanPolicyTextBlock" xml:lang="en-US" id="plab_EmployeeStockPurchasePlanPolicyTextBlock">Employee Stock Purchase Plan</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeStockPurchasePlanPolicyTextBlock" xlink:to="plab_EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="label: EmployeeStockPurchasePlanPolicyTextBlock to plab_EmployeeStockPurchasePlanPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LongTermDebtMaturingInYearOneAbstract" xlink:label="LongTermDebtMaturingInYearOneAbstract" xlink:title="LongTermDebtMaturingInYearOneAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_LongTermDebtMaturingInYearOneAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_LongTermDebtMaturingInYearOneAbstract_lbl1" xml:lang="en-US" id="plab_LongTermDebtMaturingInYearOneAbstract_lbl1">Long Term Debt Maturing In Year One [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LongTermDebtMaturingInYearOneAbstract" xlink:to="plab_LongTermDebtMaturingInYearOneAbstract_lbl1" xlink:title="label: LongTermDebtMaturingInYearOneAbstract to plab_LongTermDebtMaturingInYearOneAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US" id="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl">Amount of lessee's undiscounted obligation for lease payment for operating lease due after 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).</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour to plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xml:lang="en-US" id="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl1">Lessee, Operating Lease, Liability, Payments due after Year Four</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour to plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xml:lang="en-US" id="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour">2029 and thereafter</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour to plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US" id="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl">Amount of lessee's undiscounted obligation for lease payments for finance leases, due after fourth fiscal year following latest fiscal year.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" xlink:title="label: FinanceLeaseLiabilityPaymentsDueAfterYearFour to plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xml:lang="en-US" id="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl1">Finance Lease, Liability, Payments, Due after Year Four</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl1" xlink:title="label: FinanceLeaseLiabilityPaymentsDueAfterYearFour to plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xml:lang="en-US" id="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour">2029 and thereafter</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="label: FinanceLeaseLiabilityPaymentsDueAfterYearFour to plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CashAndNonCashInformationRelatedToLeasesAbstract" xlink:label="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:title="CashAndNonCashInformationRelatedToLeasesAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_CashAndNonCashInformationRelatedToLeasesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CashAndNonCashInformationRelatedToLeasesAbstract_lbl1" xml:lang="en-US" id="plab_CashAndNonCashInformationRelatedToLeasesAbstract_lbl1">Cash and Non-cash Information Related to Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="plab_CashAndNonCashInformationRelatedToLeasesAbstract_lbl1" xlink:title="label: CashAndNonCashInformationRelatedToLeasesAbstract to plab_CashAndNonCashInformationRelatedToLeasesAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CashAndNonCashInformationRelatedToLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CashAndNonCashInformationRelatedToLeasesAbstract" xml:lang="en-US" id="plab_CashAndNonCashInformationRelatedToLeasesAbstract">Cash and Non-cash Information Related to Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="plab_CashAndNonCashInformationRelatedToLeasesAbstract" xlink:title="label: CashAndNonCashInformationRelatedToLeasesAbstract to plab_CashAndNonCashInformationRelatedToLeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:label="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:title="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract_lbl1" xml:lang="en-US" id="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract_lbl1">Average Lease Terms, Discount Rates and Leases Not Yet Commenced [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract_lbl1" xlink:title="label: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xml:lang="en-US" id="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract">Weighted Average Remaining Lease Terms, Discount Rates [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:title="label: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionTable" xlink:label="ManufacturingFacilitiesByGeographicalRegionTable" xlink:title="ManufacturingFacilitiesByGeographicalRegionTable" />
    <link:label xlink:type="resource" xlink:label="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl" xml:lang="en-US" id="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl">Describes the operating facilities of the reporting entity by geographical region.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ManufacturingFacilitiesByGeographicalRegionTable" xlink:to="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl" xlink:title="label: ManufacturingFacilitiesByGeographicalRegionTable to plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl1" xml:lang="en-US" id="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl1">Manufacturing Facilities by Geographical Region [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ManufacturingFacilitiesByGeographicalRegionTable" xlink:to="plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl1" xlink:title="label: ManufacturingFacilitiesByGeographicalRegionTable to plab_ManufacturingFacilitiesByGeographicalRegionTable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:label="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:title="ManufacturingFacilitiesByGeographicalRegionLineItems" />
    <link:label xlink:type="resource" xlink:label="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl" xml:lang="en-US" id="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl">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.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl" xlink:title="label: ManufacturingFacilitiesByGeographicalRegionLineItems to plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl1" xml:lang="en-US" id="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl1">Manufacturing Facilities By Geographical Region [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl1" xlink:title="label: ManufacturingFacilitiesByGeographicalRegionLineItems to plab_ManufacturingFacilitiesByGeographicalRegionLineItems_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesAbstract" xlink:label="ManufacturingFacilitiesAbstract" xlink:title="ManufacturingFacilitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ManufacturingFacilitiesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ManufacturingFacilitiesAbstract_lbl1" xml:lang="en-US" id="plab_ManufacturingFacilitiesAbstract_lbl1">Manufacturing Facilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ManufacturingFacilitiesAbstract" xlink:to="plab_ManufacturingFacilitiesAbstract_lbl1" xlink:title="label: ManufacturingFacilitiesAbstract to plab_ManufacturingFacilitiesAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfManufacturingFacilities" xlink:label="NumberOfManufacturingFacilities" xlink:title="NumberOfManufacturingFacilities" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfManufacturingFacilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_NumberOfManufacturingFacilities_lbl" xml:lang="en-US" id="plab_NumberOfManufacturingFacilities_lbl">This line item represents the number of manufacturing facilities of the entity.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfManufacturingFacilities" xlink:to="plab_NumberOfManufacturingFacilities_lbl" xlink:title="label: NumberOfManufacturingFacilities to plab_NumberOfManufacturingFacilities_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfManufacturingFacilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_NumberOfManufacturingFacilities_lbl1" xml:lang="en-US" id="plab_NumberOfManufacturingFacilities_lbl1">Number of manufacturing facilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfManufacturingFacilities" xlink:to="plab_NumberOfManufacturingFacilities_lbl1" xlink:title="label: NumberOfManufacturingFacilities to plab_NumberOfManufacturingFacilities_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_NumberOfManufacturingFacilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_NumberOfManufacturingFacilities" xml:lang="en-US" id="plab_NumberOfManufacturingFacilities">Number of manufacturing facilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfManufacturingFacilities" xlink:to="plab_NumberOfManufacturingFacilities" xlink:title="label: NumberOfManufacturingFacilities to plab_NumberOfManufacturingFacilities" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAMember" xlink:label="CustomerAMember" xlink:title="CustomerAMember" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CustomerAMember_lbl" xml:lang="en-US" id="plab_CustomerAMember_lbl">Represents a customer of the Company.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerAMember" xlink:to="plab_CustomerAMember_lbl" xlink:title="label: CustomerAMember to plab_CustomerAMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerAMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerAMember_lbl1" xml:lang="en-US" id="plab_CustomerAMember_lbl1">Customer A [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerAMember" xlink:to="plab_CustomerAMember_lbl1" xlink:title="label: CustomerAMember to plab_CustomerAMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerAMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CustomerAMember" xml:lang="en-US" id="plab_CustomerAMember">Customer A [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerAMember" xlink:to="plab_CustomerAMember" xlink:title="label: CustomerAMember to plab_CustomerAMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerCMember" xlink:label="CustomerCMember" xlink:title="CustomerCMember" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerCMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CustomerCMember_lbl" xml:lang="en-US" id="plab_CustomerCMember_lbl">Customer classified as customer c.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerCMember" xlink:to="plab_CustomerCMember_lbl" xlink:title="label: CustomerCMember to plab_CustomerCMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerCMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerCMember_lbl1" xml:lang="en-US" id="plab_CustomerCMember_lbl1">Customer C [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerCMember" xlink:to="plab_CustomerCMember_lbl1" xlink:title="label: CustomerCMember to plab_CustomerCMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerBMember" xlink:label="CustomerBMember" xlink:title="CustomerBMember" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerBMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CustomerBMember_lbl" xml:lang="en-US" id="plab_CustomerBMember_lbl">Represents a customer of the Company.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerBMember" xlink:to="plab_CustomerBMember_lbl" xlink:title="label: CustomerBMember to plab_CustomerBMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerBMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerBMember_lbl1" xml:lang="en-US" id="plab_CustomerBMember_lbl1">Customer B [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerBMember" xlink:to="plab_CustomerBMember_lbl1" xlink:title="label: CustomerBMember to plab_CustomerBMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerBMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CustomerBMember" xml:lang="en-US" id="plab_CustomerBMember">Customer B [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerBMember" xlink:to="plab_CustomerBMember" xlink:title="label: CustomerBMember to plab_CustomerBMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EuropeAndOtherMember" xlink:label="EuropeAndOtherMember" xlink:title="EuropeAndOtherMember" />
    <link:label xlink:type="resource" xlink:label="plab_EuropeAndOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_EuropeAndOtherMember_lbl" xml:lang="en-US" id="plab_EuropeAndOtherMember_lbl">The continent of Europe and other areas.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EuropeAndOtherMember" xlink:to="plab_EuropeAndOtherMember_lbl" xlink:title="label: EuropeAndOtherMember to plab_EuropeAndOtherMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_EuropeAndOtherMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_EuropeAndOtherMember_lbl1" xml:lang="en-US" id="plab_EuropeAndOtherMember_lbl1">Europe and Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EuropeAndOtherMember" xlink:to="plab_EuropeAndOtherMember_lbl1" xlink:title="label: EuropeAndOtherMember to plab_EuropeAndOtherMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_EuropeAndOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_EuropeAndOtherMember" xml:lang="en-US" id="plab_EuropeAndOtherMember">Europe and Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EuropeAndOtherMember" xlink:to="plab_EuropeAndOtherMember" xlink:title="label: EuropeAndOtherMember to plab_EuropeAndOtherMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAccountedAbstract" xlink:label="CustomerAccountedAbstract" xlink:title="CustomerAccountedAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerAccountedAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerAccountedAbstract_lbl1" xml:lang="en-US" id="plab_CustomerAccountedAbstract_lbl1">Customer Account [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerAccountedAbstract" xlink:to="plab_CustomerAccountedAbstract_lbl1" xlink:title="label: CustomerAccountedAbstract to plab_CustomerAccountedAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerAccountedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CustomerAccountedAbstract" xml:lang="en-US" id="plab_CustomerAccountedAbstract">Customer Account [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerAccountedAbstract" xlink:to="plab_CustomerAccountedAbstract" xlink:title="label: CustomerAccountedAbstract to plab_CustomerAccountedAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxAssetsLeaseLiability" xlink:label="DeferredTaxAssetsLeaseLiability" xlink:title="DeferredTaxAssetsLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxAssetsLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_DeferredTaxAssetsLeaseLiability_lbl" xml:lang="en-US" id="plab_DeferredTaxAssetsLeaseLiability_lbl">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from lease liability.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsLeaseLiability" xlink:to="plab_DeferredTaxAssetsLeaseLiability_lbl" xlink:title="label: DeferredTaxAssetsLeaseLiability to plab_DeferredTaxAssetsLeaseLiability_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxAssetsLeaseLiability_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_DeferredTaxAssetsLeaseLiability_lbl1" xml:lang="en-US" id="plab_DeferredTaxAssetsLeaseLiability_lbl1">Deferred Tax Assets, Lease Liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsLeaseLiability" xlink:to="plab_DeferredTaxAssetsLeaseLiability_lbl1" xlink:title="label: DeferredTaxAssetsLeaseLiability to plab_DeferredTaxAssetsLeaseLiability_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxAssetsLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_DeferredTaxAssetsLeaseLiability" xml:lang="en-US" id="plab_DeferredTaxAssetsLeaseLiability">Lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxAssetsLeaseLiability" xlink:to="plab_DeferredTaxAssetsLeaseLiability" xlink:title="label: DeferredTaxAssetsLeaseLiability to plab_DeferredTaxAssetsLeaseLiability" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="DeferredTaxLiabilitiesRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl" xml:lang="en-US" id="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl">Amount of deferred tax liability attributable to taxable temporary differences from right-of-use assets.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesRightOfUseAsset" xlink:to="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl" xlink:title="label: DeferredTaxLiabilitiesRightOfUseAsset to plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl1" xml:lang="en-US" id="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl1">Deferred Tax Liabilities, Right-of-use Asset</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesRightOfUseAsset" xlink:to="plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl1" xlink:title="label: DeferredTaxLiabilitiesRightOfUseAsset to plab_DeferredTaxLiabilitiesRightOfUseAsset_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_DeferredTaxLiabilitiesRightOfUseAsset" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="plab_DeferredTaxLiabilitiesRightOfUseAsset" xml:lang="en-US" id="plab_DeferredTaxLiabilitiesRightOfUseAsset">ROU assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredTaxLiabilitiesRightOfUseAsset" xlink:to="plab_DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="label: DeferredTaxLiabilitiesRightOfUseAsset to plab_DeferredTaxLiabilitiesRightOfUseAsset" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:label="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:title="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract_lbl1" xml:lang="en-US" id="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract_lbl1">Components Of Income Before Income Tax Provision [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:to="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract_lbl1" xlink:title="label: ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract to plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xml:lang="en-US" id="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract">Components of Income Before Income Tax Provision [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:to="plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:title="label: ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract to plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:label="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:title="CashAndNonCashInformationRelatedToLeasesTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl" xml:lang="en-US" id="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl">Tabular disclosure of lessee's cash paid for operating leases and ROU assets obtained in exchange for operating lease liabilities.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:to="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl" xlink:title="label: CashAndNonCashInformationRelatedToLeasesTextBlock to plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl1" xml:lang="en-US" id="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl1">Cash and Non-cash Information Related to Leases [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:to="plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl1" xlink:title="label: CashAndNonCashInformationRelatedToLeasesTextBlock to plab_CashAndNonCashInformationRelatedToLeasesTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CashAndNonCashInformationRelatedToLeasesTextBlock" xml:lang="en-US" id="plab_CashAndNonCashInformationRelatedToLeasesTextBlock">Cash and Non-cash Information Related to Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:to="plab_CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:title="label: CashAndNonCashInformationRelatedToLeasesTextBlock to plab_CashAndNonCashInformationRelatedToLeasesTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:label="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:title="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl" xml:lang="en-US" id="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl">Tabular disclosure of balance sheet information related to leases.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:to="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl" xlink:title="label: InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock to plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl1" xml:lang="en-US" id="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl1">Information on Operating and Finance Leases Included in Consolidated Balance Sheets [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:to="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl1" xlink:title="label: InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock to plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xml:lang="en-US" id="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock">Information on Operating and Finance Leases Included in Consolidated Balance Sheets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:to="plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:title="label: InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock to plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:label="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:title="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl" xml:lang="en-US" id="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl">Tabular disclosure of lessee's weighted-average remaining lease term and weighted-average discount rate.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:to="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl" xlink:title="label: LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock to plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl1" xml:lang="en-US" id="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl1">Lessee, Operating Lease, Weighted Average Remaining Lease Term, Discount Rate [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:to="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl1" xlink:title="label: LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock to plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xml:lang="en-US" id="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock">Weighted-Average Remaining Lease Terms And Weighted-Average Discount Rates</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:to="plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:title="label: LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock to plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:label="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:title="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl" xml:lang="en-US" id="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl">Tabular disclosure of undiscounted cash flows of lessee's operating and finance lease liability.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:to="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl" xlink:title="label: FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock to plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl1" xml:lang="en-US" id="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl1">Future Lease Payments under Noncancelable Operating and Finance Leases [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:to="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl1" xlink:title="label: FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock to plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xml:lang="en-US" id="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock">Future Lease Payments under Noncancelable Operating and Finance Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:to="plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:title="label: FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock to plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoansAbstract" xlink:label="ProjectLoansAbstract" xlink:title="ProjectLoansAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ProjectLoansAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ProjectLoansAbstract_lbl1" xml:lang="en-US" id="plab_ProjectLoansAbstract_lbl1">Project Loans [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProjectLoansAbstract" xlink:to="plab_ProjectLoansAbstract_lbl1" xlink:title="label: ProjectLoansAbstract to plab_ProjectLoansAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoanMember" xlink:label="ProjectLoanMember" xlink:title="ProjectLoanMember" />
    <link:label xlink:type="resource" xlink:label="plab_ProjectLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ProjectLoanMember_lbl" xml:lang="en-US" id="plab_ProjectLoanMember_lbl">Written promise to pay a note which can be exchanged for a specified quantity of securities (typically common stock), at the option of the issuer or the holder.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProjectLoanMember" xlink:to="plab_ProjectLoanMember_lbl" xlink:title="label: ProjectLoanMember to plab_ProjectLoanMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ProjectLoanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ProjectLoanMember_lbl1" xml:lang="en-US" id="plab_ProjectLoanMember_lbl1">Project Loan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProjectLoanMember" xlink:to="plab_ProjectLoanMember_lbl1" xlink:title="label: ProjectLoanMember to plab_ProjectLoanMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ProjectLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ProjectLoanMember" xml:lang="en-US" id="plab_ProjectLoanMember">Xiamen Project Loans [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProjectLoanMember" xlink:to="plab_ProjectLoanMember" xlink:title="label: ProjectLoanMember to plab_ProjectLoanMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CommitmentAndContingenciesAbstract" xlink:label="CommitmentAndContingenciesAbstract" xlink:title="CommitmentAndContingenciesAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_CommitmentAndContingenciesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CommitmentAndContingenciesAbstract_lbl1" xml:lang="en-US" id="plab_CommitmentAndContingenciesAbstract_lbl1">Commitment and Contingencies [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentAndContingenciesAbstract" xlink:to="plab_CommitmentAndContingenciesAbstract_lbl1" xlink:title="label: CommitmentAndContingenciesAbstract to plab_CommitmentAndContingenciesAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MinimumRemainingTermOfPlantAndEquipment" xlink:label="MinimumRemainingTermOfPlantAndEquipment" xlink:title="MinimumRemainingTermOfPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumRemainingTermOfPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_MinimumRemainingTermOfPlantAndEquipment_lbl" xml:lang="en-US" id="plab_MinimumRemainingTermOfPlantAndEquipment_lbl">Remaining term physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumRemainingTermOfPlantAndEquipment" xlink:to="plab_MinimumRemainingTermOfPlantAndEquipment_lbl" xlink:title="label: MinimumRemainingTermOfPlantAndEquipment to plab_MinimumRemainingTermOfPlantAndEquipment_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumRemainingTermOfPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_MinimumRemainingTermOfPlantAndEquipment_lbl1" xml:lang="en-US" id="plab_MinimumRemainingTermOfPlantAndEquipment_lbl1">Minimum Remaining Term of Plant and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumRemainingTermOfPlantAndEquipment" xlink:to="plab_MinimumRemainingTermOfPlantAndEquipment_lbl1" xlink:title="label: MinimumRemainingTermOfPlantAndEquipment to plab_MinimumRemainingTermOfPlantAndEquipment_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_MinimumRemainingTermOfPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_MinimumRemainingTermOfPlantAndEquipment" xml:lang="en-US" id="plab_MinimumRemainingTermOfPlantAndEquipment">Minimum remaining term of plant and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumRemainingTermOfPlantAndEquipment" xlink:to="plab_MinimumRemainingTermOfPlantAndEquipment" xlink:title="label: MinimumRemainingTermOfPlantAndEquipment to plab_MinimumRemainingTermOfPlantAndEquipment" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_WorkingCapitalLoanMember" xlink:label="WorkingCapitalLoanMember" xlink:title="WorkingCapitalLoanMember" />
    <link:label xlink:type="resource" xlink:label="plab_WorkingCapitalLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_WorkingCapitalLoanMember_lbl" xml:lang="en-US" id="plab_WorkingCapitalLoanMember_lbl">Written promise to pay a note which can be exchanged for a specified quantity of securities (typically common stock), at the option of the issuer or the holder.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WorkingCapitalLoanMember" xlink:to="plab_WorkingCapitalLoanMember_lbl" xlink:title="label: WorkingCapitalLoanMember to plab_WorkingCapitalLoanMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_WorkingCapitalLoanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_WorkingCapitalLoanMember_lbl1" xml:lang="en-US" id="plab_WorkingCapitalLoanMember_lbl1">Working Capital Loan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WorkingCapitalLoanMember" xlink:to="plab_WorkingCapitalLoanMember_lbl1" xlink:title="label: WorkingCapitalLoanMember to plab_WorkingCapitalLoanMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_WorkingCapitalLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_WorkingCapitalLoanMember" xml:lang="en-US" id="plab_WorkingCapitalLoanMember">Xiamen Working Capital Loans [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WorkingCapitalLoanMember" xlink:to="plab_WorkingCapitalLoanMember" xlink:title="label: WorkingCapitalLoanMember to plab_WorkingCapitalLoanMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl">Changes to accumulated other comprehensive income including portion attributable to non-controlling interest resulting from other.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl" xlink:title="label: AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl1" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl1">Accumulated Other Comprehensive Income Including Portion Attributable to Noncontrolling Interest Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl1" xlink:title="label: AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="label: AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl">Changes to accumulated other comprehensive income attributable to non-controlling interest resulting from other.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl" xlink:title="label: AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl1" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl1">Accumulated Other Comprehensive Income Attributable to Noncontrolling Interest Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl1" xlink:title="label: AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="label: AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember to plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeOtherMember" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl">Changes to accumulated comprehensive income resulting from other.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl" xlink:title="label: AccumulatedOtherComprehensiveIncomeOtherMember to plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl1" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl1">Accumulated Other Comprehensive Income Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl1" xlink:title="label: AccumulatedOtherComprehensiveIncomeOtherMember to plab_AccumulatedOtherComprehensiveIncomeOtherMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AccumulatedOtherComprehensiveIncomeOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_AccumulatedOtherComprehensiveIncomeOtherMember" xml:lang="en-US" id="plab_AccumulatedOtherComprehensiveIncomeOtherMember">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:to="plab_AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="label: AccumulatedOtherComprehensiveIncomeOtherMember to plab_AccumulatedOtherComprehensiveIncomeOtherMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_GovernmentGrantsPolicyTextBlock" xlink:label="GovernmentGrantsPolicyTextBlock" xlink:title="GovernmentGrantsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_GovernmentGrantsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_GovernmentGrantsPolicyTextBlock_lbl" xml:lang="en-US" id="plab_GovernmentGrantsPolicyTextBlock_lbl">Disclosure of accounting policy for government grants.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GovernmentGrantsPolicyTextBlock" xlink:to="plab_GovernmentGrantsPolicyTextBlock_lbl" xlink:title="label: GovernmentGrantsPolicyTextBlock to plab_GovernmentGrantsPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_GovernmentGrantsPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_GovernmentGrantsPolicyTextBlock_lbl1" xml:lang="en-US" id="plab_GovernmentGrantsPolicyTextBlock_lbl1">Government Grants [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GovernmentGrantsPolicyTextBlock" xlink:to="plab_GovernmentGrantsPolicyTextBlock_lbl1" xlink:title="label: GovernmentGrantsPolicyTextBlock to plab_GovernmentGrantsPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_GovernmentGrantsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_GovernmentGrantsPolicyTextBlock" xml:lang="en-US" id="plab_GovernmentGrantsPolicyTextBlock">Government Grants</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GovernmentGrantsPolicyTextBlock" xlink:to="plab_GovernmentGrantsPolicyTextBlock" xlink:title="label: GovernmentGrantsPolicyTextBlock to plab_GovernmentGrantsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_TreasuryStockPolicyTextBlock" xlink:label="TreasuryStockPolicyTextBlock" xlink:title="TreasuryStockPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_TreasuryStockPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_TreasuryStockPolicyTextBlock_lbl" xml:lang="en-US" id="plab_TreasuryStockPolicyTextBlock_lbl">Disclosure of accounting policy for treasury stock valuation, including method of recording repurchases (cost or par value method) and method for valuing subsequent resale.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockPolicyTextBlock" xlink:to="plab_TreasuryStockPolicyTextBlock_lbl" xlink:title="label: TreasuryStockPolicyTextBlock to plab_TreasuryStockPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_TreasuryStockPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_TreasuryStockPolicyTextBlock_lbl1" xml:lang="en-US" id="plab_TreasuryStockPolicyTextBlock_lbl1">Treasury Stock [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockPolicyTextBlock" xlink:to="plab_TreasuryStockPolicyTextBlock_lbl1" xlink:title="label: TreasuryStockPolicyTextBlock to plab_TreasuryStockPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_TreasuryStockPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_TreasuryStockPolicyTextBlock" xml:lang="en-US" id="plab_TreasuryStockPolicyTextBlock">Treasury Stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockPolicyTextBlock" xlink:to="plab_TreasuryStockPolicyTextBlock" xlink:title="label: TreasuryStockPolicyTextBlock to plab_TreasuryStockPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ForeignCurrencyTransactionsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl" xml:lang="en-US" id="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl">Disclosure of accounting policy for transactions denominated in a currency other than the reporting enterprise's functional currency.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionsPolicyTextBlock" xlink:to="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl" xlink:title="label: ForeignCurrencyTransactionsPolicyTextBlock to plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl1" xml:lang="en-US" id="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl1">Foreign Currency Transactions [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionsPolicyTextBlock" xlink:to="plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl1" xlink:title="label: ForeignCurrencyTransactionsPolicyTextBlock to plab_ForeignCurrencyTransactionsPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_ForeignCurrencyTransactionsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_ForeignCurrencyTransactionsPolicyTextBlock" xml:lang="en-US" id="plab_ForeignCurrencyTransactionsPolicyTextBlock">Foreign Currency Transactions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionsPolicyTextBlock" xlink:to="plab_ForeignCurrencyTransactionsPolicyTextBlock" xlink:title="label: ForeignCurrencyTransactionsPolicyTextBlock to plab_ForeignCurrencyTransactionsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PrinciplesOfConsolidationAbstract" xlink:label="PrinciplesOfConsolidationAbstract" xlink:title="PrinciplesOfConsolidationAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_PrinciplesOfConsolidationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PrinciplesOfConsolidationAbstract_lbl1" xml:lang="en-US" id="plab_PrinciplesOfConsolidationAbstract_lbl1">Principles of Consolidation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrinciplesOfConsolidationAbstract" xlink:to="plab_PrinciplesOfConsolidationAbstract_lbl1" xlink:title="label: PrinciplesOfConsolidationAbstract to plab_PrinciplesOfConsolidationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PercentageOfOwnershipInterestInSubsidiaries" xlink:label="PercentageOfOwnershipInterestInSubsidiaries" xlink:title="PercentageOfOwnershipInterestInSubsidiaries" />
    <link:label xlink:type="resource" xlink:label="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl" xml:lang="en-US" id="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl">Noncontrolling interests in subsidiaries related to Photronics ownership interests of less than are reported as Noncontrolling interests in the consolidated balance sheets.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PercentageOfOwnershipInterestInSubsidiaries" xlink:to="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl" xlink:title="label: PercentageOfOwnershipInterestInSubsidiaries to plab_PercentageOfOwnershipInterestInSubsidiaries_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl1" xml:lang="en-US" id="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl1">Percentage of Ownership Interest in Subsidiaries</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PercentageOfOwnershipInterestInSubsidiaries" xlink:to="plab_PercentageOfOwnershipInterestInSubsidiaries_lbl1" xlink:title="label: PercentageOfOwnershipInterestInSubsidiaries to plab_PercentageOfOwnershipInterestInSubsidiaries_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_PercentageOfOwnershipInterestInSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_PercentageOfOwnershipInterestInSubsidiaries" xml:lang="en-US" id="plab_PercentageOfOwnershipInterestInSubsidiaries">Percentage of ownership interest in subsidiaries</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PercentageOfOwnershipInterestInSubsidiaries" xlink:to="plab_PercentageOfOwnershipInterestInSubsidiaries" xlink:title="label: PercentageOfOwnershipInterestInSubsidiaries to plab_PercentageOfOwnershipInterestInSubsidiaries" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AntidilutiveSecuritiesAbstract" xlink:label="AntidilutiveSecuritiesAbstract" xlink:title="AntidilutiveSecuritiesAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_AntidilutiveSecuritiesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AntidilutiveSecuritiesAbstract_lbl1" xml:lang="en-US" id="plab_AntidilutiveSecuritiesAbstract_lbl1">Antidilutive Securities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesAbstract" xlink:to="plab_AntidilutiveSecuritiesAbstract_lbl1" xlink:title="label: AntidilutiveSecuritiesAbstract to plab_AntidilutiveSecuritiesAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_GovernmentGrantsAbstract" xlink:label="GovernmentGrantsAbstract" xlink:title="GovernmentGrantsAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_GovernmentGrantsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_GovernmentGrantsAbstract_lbl1" xml:lang="en-US" id="plab_GovernmentGrantsAbstract_lbl1">Government Grants [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GovernmentGrantsAbstract" xlink:to="plab_GovernmentGrantsAbstract_lbl1" xlink:title="label: GovernmentGrantsAbstract to plab_GovernmentGrantsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IncreaseDecreaseInPropertyAndEquipmentNet" xlink:label="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:title="IncreaseDecreaseInPropertyAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl" xml:lang="en-US" id="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl">The increase (decrease) in the amount of property and equipment, net due to result of expected refundable tax credits in connection with the CHIPS Act.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:to="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl" xlink:title="label: IncreaseDecreaseInPropertyAndEquipmentNet to plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl1" xml:lang="en-US" id="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl1">Increase (Decrease) in Property and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:to="plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl1" xlink:title="label: IncreaseDecreaseInPropertyAndEquipmentNet to plab_IncreaseDecreaseInPropertyAndEquipmentNet_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_IncreaseDecreaseInPropertyAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_IncreaseDecreaseInPropertyAndEquipmentNet" xml:lang="en-US" id="plab_IncreaseDecreaseInPropertyAndEquipmentNet">Decrease in property and equipment, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:to="plab_IncreaseDecreaseInPropertyAndEquipmentNet" xlink:title="label: IncreaseDecreaseInPropertyAndEquipmentNet to plab_IncreaseDecreaseInPropertyAndEquipmentNet" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductWarrantyAbstract" xlink:label="ProductWarrantyAbstract" xlink:title="ProductWarrantyAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_ProductWarrantyAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_ProductWarrantyAbstract_lbl1" xml:lang="en-US" id="plab_ProductWarrantyAbstract_lbl1">Product Warranty [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductWarrantyAbstract" xlink:to="plab_ProductWarrantyAbstract_lbl1" xlink:title="label: ProductWarrantyAbstract to plab_ProductWarrantyAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PeriodOfWarranty" xlink:label="PeriodOfWarranty" xlink:title="PeriodOfWarranty" />
    <link:label xlink:type="resource" xlink:label="plab_PeriodOfWarranty_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_PeriodOfWarranty_lbl" xml:lang="en-US" id="plab_PeriodOfWarranty_lbl">Represents the period of warranty coverage of products sold, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PeriodOfWarranty" xlink:to="plab_PeriodOfWarranty_lbl" xlink:title="label: PeriodOfWarranty to plab_PeriodOfWarranty_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_PeriodOfWarranty_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_PeriodOfWarranty_lbl1" xml:lang="en-US" id="plab_PeriodOfWarranty_lbl1">Period of warranty</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PeriodOfWarranty" xlink:to="plab_PeriodOfWarranty_lbl1" xlink:title="label: PeriodOfWarranty to plab_PeriodOfWarranty_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_PeriodOfWarranty" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_PeriodOfWarranty" xml:lang="en-US" id="plab_PeriodOfWarranty">Product warranty period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PeriodOfWarranty" xlink:to="plab_PeriodOfWarranty" xlink:title="label: PeriodOfWarranty to plab_PeriodOfWarranty" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_BacklogOfOrdersAbstract" xlink:label="BacklogOfOrdersAbstract" xlink:title="BacklogOfOrdersAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_BacklogOfOrdersAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_BacklogOfOrdersAbstract_lbl1" xml:lang="en-US" id="plab_BacklogOfOrdersAbstract_lbl1">Backlog Of Orders [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BacklogOfOrdersAbstract" xlink:to="plab_BacklogOfOrdersAbstract_lbl1" xlink:title="label: BacklogOfOrdersAbstract to plab_BacklogOfOrdersAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_BacklogOfOrdersAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_BacklogOfOrdersAbstract" xml:lang="en-US" id="plab_BacklogOfOrdersAbstract">Backlog of Orders [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BacklogOfOrdersAbstract" xlink:to="plab_BacklogOfOrdersAbstract" xlink:title="label: BacklogOfOrdersAbstract to plab_BacklogOfOrdersAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExtendedTimingOfSatisfactionPeriod" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl" xml:lang="en-US" id="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl">Period in which customer order is extended to be fulfilled, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl" xlink:title="label: CustomerOrdersExtendedTimingOfSatisfactionPeriod to plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl1" xml:lang="en-US" id="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl1">Customer orders, Extended Timing of Satisfaction, Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl1" xlink:title="label: CustomerOrdersExtendedTimingOfSatisfactionPeriod to plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xml:lang="en-US" id="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod">Customer order, extended satisfaction period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="label: CustomerOrdersExtendedTimingOfSatisfactionPeriod to plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExpectedTimingOfSatisfactionPeriod" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl" xml:lang="en-US" id="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl">Period in which customer order is expected to be fulfilled, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl" xlink:title="label: CustomerOrdersExpectedTimingOfSatisfactionPeriod to plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl1" xml:lang="en-US" id="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl1">Customer orders, Expected Timing of Satisfaction, Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl1" xlink:title="label: CustomerOrdersExpectedTimingOfSatisfactionPeriod to plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xml:lang="en-US" id="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod">Customer order, expected satisfaction period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:to="plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="label: CustomerOrdersExpectedTimingOfSatisfactionPeriod to plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:label="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl">The gross amount of unrecognized tax benefits, plus accrued penalties and interest, pertaining to uncertain tax positions taken in tax returns as of the balance sheet date.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:to="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl" xlink:title="label: UnrecognizedTaxBenefitsIncludingInterestAndPenalties to plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl1" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl1">Unrecognized Tax Benefits including interest and penalties</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:to="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl1" xlink:title="label: UnrecognizedTaxBenefitsIncludingInterestAndPenalties to plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties">Balance at end of year including interest and penalties</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:to="plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="label: UnrecognizedTaxBenefitsIncludingInterestAndPenalties to plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_TaxCreditCarryforwardAbstract" xlink:label="TaxCreditCarryforwardAbstract" xlink:title="TaxCreditCarryforwardAbstract" />
    <link:label xlink:type="resource" xlink:label="plab_TaxCreditCarryforwardAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_TaxCreditCarryforwardAbstract_lbl1" xml:lang="en-US" id="plab_TaxCreditCarryforwardAbstract_lbl1">Tax Credit Carryforward [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxCreditCarryforwardAbstract" xlink:to="plab_TaxCreditCarryforwardAbstract_lbl1" xlink:title="label: TaxCreditCarryforwardAbstract to plab_TaxCreditCarryforwardAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AmendedAndRestatedCreditAgreementMember" xlink:label="AmendedAndRestatedCreditAgreementMember" xlink:title="AmendedAndRestatedCreditAgreementMember" />
    <link:label xlink:type="resource" xlink:label="plab_AmendedAndRestatedCreditAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_AmendedAndRestatedCreditAgreementMember_lbl" xml:lang="en-US" id="plab_AmendedAndRestatedCreditAgreementMember_lbl">The member represents to amended and restated credit agreement.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendedAndRestatedCreditAgreementMember" xlink:to="plab_AmendedAndRestatedCreditAgreementMember_lbl" xlink:title="label: AmendedAndRestatedCreditAgreementMember to plab_AmendedAndRestatedCreditAgreementMember_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_AmendedAndRestatedCreditAgreementMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_AmendedAndRestatedCreditAgreementMember_lbl1" xml:lang="en-US" id="plab_AmendedAndRestatedCreditAgreementMember_lbl1">Amended and Restated Credit Agreement [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendedAndRestatedCreditAgreementMember" xlink:to="plab_AmendedAndRestatedCreditAgreementMember_lbl1" xlink:title="label: AmendedAndRestatedCreditAgreementMember to plab_AmendedAndRestatedCreditAgreementMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_AmendedAndRestatedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_AmendedAndRestatedCreditAgreementMember" xml:lang="en-US" id="plab_AmendedAndRestatedCreditAgreementMember">Corporate Credit Agreement [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendedAndRestatedCreditAgreementMember" xlink:to="plab_AmendedAndRestatedCreditAgreementMember" xlink:title="label: AmendedAndRestatedCreditAgreementMember to plab_AmendedAndRestatedCreditAgreementMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitNoncurrent" xlink:label="UnrecognizedTaxBenefitNoncurrent" xlink:title="UnrecognizedTaxBenefitNoncurrent" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="plab_UnrecognizedTaxBenefitNoncurrent_lbl" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitNoncurrent_lbl">Amount of unrecognized tax benefit classified as other.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitNoncurrent" xlink:to="plab_UnrecognizedTaxBenefitNoncurrent_lbl" xlink:title="label: UnrecognizedTaxBenefitNoncurrent to plab_UnrecognizedTaxBenefitNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="plab_UnrecognizedTaxBenefitNoncurrent_lbl1" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitNoncurrent_lbl1">Unrecognized tax benefit, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitNoncurrent" xlink:to="plab_UnrecognizedTaxBenefitNoncurrent_lbl1" xlink:title="label: UnrecognizedTaxBenefitNoncurrent to plab_UnrecognizedTaxBenefitNoncurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="plab_UnrecognizedTaxBenefitNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="plab_UnrecognizedTaxBenefitNoncurrent" xml:lang="en-US" id="plab_UnrecognizedTaxBenefitNoncurrent">Unrecognized tax benefit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UnrecognizedTaxBenefitNoncurrent" xlink:to="plab_UnrecognizedTaxBenefitNoncurrent" xlink:title="label: UnrecognizedTaxBenefitNoncurrent to plab_UnrecognizedTaxBenefitNoncurrent" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>plab-20241031_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 24.12.1.5274 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchaseProgramsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchaseProgramsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RelatedPartyTransactionsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RelatedPartyTransactionsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrationsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrationsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingenciesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingenciesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesComponentsOfIncomeTaxesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/EmployeeRetirementPlansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#EmployeeRetirementPlansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesOperatingAndFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesLeaseCostDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesLeaseCostDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueDisaggregationOfRevenueDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtInterestPaidForDebtDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtInterestPaidForDebtDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtCorporateCreditAgreementDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtCorporateCreditAgreementDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtXiamenWorkingCapitalLoansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtXiamenProjectLoansDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtXiamenProjectLoansDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtFinanceLeasesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtFinanceLeasesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtLongtermDebtDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureVieDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureVieDetails" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/InventoriesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssetsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssetsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivableDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivableDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesInvestmentsDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesRestrictedCashDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesBusinessDetails" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchaseProgramsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchaseProgramsTables" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsTables" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrationsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrationsTables" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingenciesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingenciesTables" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesTables" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationTables" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationTables" />
  <link:roleRef roleURI="http://photronics.com/role/LeasesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#LeasesTables" />
  <link:roleRef roleURI="http://photronics.com/role/RevenueTables" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenueTables" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilitiesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilitiesTables" />
  <link:roleRef roleURI="http://photronics.com/role/DebtTables" xlink:type="simple" xlink:href="plab-20241031.xsd#DebtTables" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilitiesTables" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVentureTables" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVentureTables" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNetTables" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNetTables" />
  <link:roleRef roleURI="http://photronics.com/role/InventoriesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#InventoriesTables" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssetsTables" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssetsTables" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivableTables" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivableTables" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesTables" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurementsPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurementsPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxesPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxesPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensationPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensationPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/RevenuePolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#RevenuePolicies" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVenturePolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVenturePolicies" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/InsiderTradingArrangements" xlink:type="simple" xlink:href="plab-20241031.xsd#InsiderTradingArrangements" />
  <link:roleRef roleURI="http://photronics.com/role/ShareRepurchasePrograms" xlink:type="simple" xlink:href="plab-20241031.xsd#ShareRepurchasePrograms" />
  <link:roleRef roleURI="http://photronics.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="plab-20241031.xsd#FairValueMeasurements" />
  <link:roleRef roleURI="http://photronics.com/role/RelatedPartyTransactions" xlink:type="simple" xlink:href="plab-20241031.xsd#RelatedPartyTransactions" />
  <link:roleRef roleURI="http://photronics.com/role/RisksAndConcentrations" xlink:type="simple" xlink:href="plab-20241031.xsd#RisksAndConcentrations" />
  <link:roleRef roleURI="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" xlink:type="simple" xlink:href="plab-20241031.xsd#ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent" />
  <link:roleRef roleURI="http://photronics.com/role/CommitmentsAndContingencies" xlink:type="simple" xlink:href="plab-20241031.xsd#CommitmentsAndContingencies" />
  <link:roleRef roleURI="http://photronics.com/role/EarningsPerShare" xlink:type="simple" xlink:href="plab-20241031.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://photronics.com/role/IncomeTaxes" xlink:type="simple" xlink:href="plab-20241031.xsd#IncomeTaxes" />
  <link:roleRef roleURI="http://photronics.com/role/EmployeeRetirementPlans" xlink:type="simple" xlink:href="plab-20241031.xsd#EmployeeRetirementPlans" />
  <link:roleRef roleURI="http://photronics.com/role/SharebasedCompensation" xlink:type="simple" xlink:href="plab-20241031.xsd#SharebasedCompensation" />
  <link:roleRef roleURI="http://photronics.com/role/Leases" xlink:type="simple" xlink:href="plab-20241031.xsd#Leases" />
  <link:roleRef roleURI="http://photronics.com/role/Revenue" xlink:type="simple" xlink:href="plab-20241031.xsd#Revenue" />
  <link:roleRef roleURI="http://photronics.com/role/OtherLiabilities" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherLiabilities" />
  <link:roleRef roleURI="http://photronics.com/role/Debt" xlink:type="simple" xlink:href="plab-20241031.xsd#Debt" />
  <link:roleRef roleURI="http://photronics.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="plab-20241031.xsd#AccruedLiabilities" />
  <link:roleRef roleURI="http://photronics.com/role/PdmcxJointVenture" xlink:type="simple" xlink:href="plab-20241031.xsd#PdmcxJointVenture" />
  <link:roleRef roleURI="http://photronics.com/role/PropertyPlantAndEquipmentNet" xlink:type="simple" xlink:href="plab-20241031.xsd#PropertyPlantAndEquipmentNet" />
  <link:roleRef roleURI="http://photronics.com/role/Inventories" xlink:type="simple" xlink:href="plab-20241031.xsd#Inventories" />
  <link:roleRef roleURI="http://photronics.com/role/OtherCurrentAssets" xlink:type="simple" xlink:href="plab-20241031.xsd#OtherCurrentAssets" />
  <link:roleRef roleURI="http://photronics.com/role/AccountsReceivable" xlink:type="simple" xlink:href="plab-20241031.xsd#AccountsReceivable" />
  <link:roleRef roleURI="http://photronics.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="simple" xlink:href="plab-20241031.xsd#SummaryOfSignificantAccountingPolicies" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfEquity" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfEquity" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedStatementsOfIncome" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://photronics.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="plab-20241031.xsd#ConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://photronics.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="plab-20241031.xsd#DocumentAndEntityInformation" />
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DocumentAndEntityInformation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentType" xlink:title="presentation: CoverAbstract to DocumentType" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AmendmentFlag" xlink:title="presentation: CoverAbstract to AmendmentFlag" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentAnnualReport" xlink:label="DocumentAnnualReport" xlink:title="DocumentAnnualReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentAnnualReport" xlink:title="presentation: CoverAbstract to DocumentAnnualReport" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentPeriodEndDate" xlink:title="presentation: CoverAbstract to DocumentPeriodEndDate" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CurrentFiscalYearEndDate" xlink:title="presentation: CoverAbstract to CurrentFiscalYearEndDate" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalYearFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalYearFocus" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalPeriodFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalPeriodFocus" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentTransitionReport" xlink:title="presentation: CoverAbstract to DocumentTransitionReport" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFileNumber" xlink:title="presentation: CoverAbstract to EntityFileNumber" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityRegistrantName" xlink:title="presentation: CoverAbstract to EntityRegistrantName" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCentralIndexKey" xlink:title="presentation: CoverAbstract to EntityCentralIndexKey" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityIncorporationStateCountryCode" xlink:title="presentation: CoverAbstract to EntityIncorporationStateCountryCode" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityTaxIdentificationNumber" xlink:title="presentation: CoverAbstract to EntityTaxIdentificationNumber" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine1" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine1" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressCityOrTown" xlink:title="presentation: CoverAbstract to EntityAddressCityOrTown" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressStateOrProvince" xlink:title="presentation: CoverAbstract to EntityAddressStateOrProvince" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressPostalZipCode" xlink:title="presentation: CoverAbstract to EntityAddressPostalZipCode" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CityAreaCode" xlink:title="presentation: CoverAbstract to CityAreaCode" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="LocalPhoneNumber" xlink:title="presentation: CoverAbstract to LocalPhoneNumber" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="Security12bTitle" xlink:title="presentation: CoverAbstract to Security12bTitle" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="TradingSymbol" xlink:title="presentation: CoverAbstract to TradingSymbol" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="SecurityExchangeName" xlink:title="presentation: CoverAbstract to SecurityExchangeName" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="EntityWellKnownSeasonedIssuer" xlink:title="EntityWellKnownSeasonedIssuer" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityWellKnownSeasonedIssuer" xlink:title="presentation: CoverAbstract to EntityWellKnownSeasonedIssuer" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityVoluntaryFilers" xlink:label="EntityVoluntaryFilers" xlink:title="EntityVoluntaryFilers" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityVoluntaryFilers" xlink:title="presentation: CoverAbstract to EntityVoluntaryFilers" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCurrentReportingStatus" xlink:title="presentation: CoverAbstract to EntityCurrentReportingStatus" order="24.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityInteractiveDataCurrent" xlink:title="presentation: CoverAbstract to EntityInteractiveDataCurrent" order="25.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFilerCategory" xlink:title="presentation: CoverAbstract to EntityFilerCategory" order="26.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntitySmallBusiness" xlink:title="presentation: CoverAbstract to EntitySmallBusiness" order="27.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityEmergingGrowthCompany" xlink:title="presentation: CoverAbstract to EntityEmergingGrowthCompany" order="28.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="IcfrAuditorAttestationFlag" xlink:title="IcfrAuditorAttestationFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="IcfrAuditorAttestationFlag" xlink:title="presentation: CoverAbstract to IcfrAuditorAttestationFlag" order="29.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFinStmtErrorCorrectionFlag" xlink:label="DocumentFinStmtErrorCorrectionFlag" xlink:title="DocumentFinStmtErrorCorrectionFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFinStmtErrorCorrectionFlag" xlink:title="presentation: CoverAbstract to DocumentFinStmtErrorCorrectionFlag" order="30.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityShellCompany" xlink:title="presentation: CoverAbstract to EntityShellCompany" order="31.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityPublicFloat" xlink:label="EntityPublicFloat" xlink:title="EntityPublicFloat" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityPublicFloat" xlink:title="presentation: CoverAbstract to EntityPublicFloat" order="32.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCommonStockSharesOutstanding" xlink:title="presentation: CoverAbstract to EntityCommonStockSharesOutstanding" order="33.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorFirmId" xlink:label="AuditorFirmId" xlink:title="AuditorFirmId" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AuditorFirmId" xlink:title="presentation: CoverAbstract to AuditorFirmId" order="34.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorName" xlink:label="AuditorName" xlink:title="AuditorName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AuditorName" xlink:title="presentation: CoverAbstract to AuditorName" order="35.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AuditorLocation" xlink:label="AuditorLocation" xlink:title="AuditorLocation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AuditorLocation" xlink:title="presentation: CoverAbstract to AuditorLocation" order="36.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="presentation: AssetsCurrentAbstract to CashAndCashEquivalentsAtCarryingValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermInvestments" xlink:label="ShortTermInvestments" xlink:title="ShortTermInvestments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="ShortTermInvestments" xlink:title="presentation: AssetsCurrentAbstract to ShortTermInvestments" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AccountsReceivableNetCurrent" xlink:title="presentation: AssetsCurrentAbstract to AccountsReceivableNetCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="InventoryNet" xlink:title="presentation: AssetsCurrentAbstract to InventoryNet" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="OtherAssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to OtherAssetsCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to AssetsCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsCurrentAbstract" xlink:title="presentation: AssetsAbstract to AssetsCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="presentation: AssetsAbstract to PropertyPlantAndEquipmentNet" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="presentation: AssetsAbstract to DeferredIncomeTaxAssetsNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="OtherAssetsNoncurrent" xlink:title="presentation: AssetsAbstract to OtherAssetsNoncurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="Assets" xlink:title="presentation: AssetsAbstract to Assets" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:label="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="LongTermDebtAndCapitalLeaseObligationsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to LongTermDebtAndCapitalLeaseObligationsCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccountsPayableCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to AccountsPayableCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccruedLiabilitiesCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to AccruedLiabilitiesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LiabilitiesCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to LiabilitiesCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesCurrentAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LongTermDebtAndCapitalLeaseObligations" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to OtherLiabilitiesNoncurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="Liabilities" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to Liabilities" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="CommitmentsAndContingencies" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to CommitmentsAndContingencies" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="PreferredStockValue" xlink:title="PreferredStockValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="PreferredStockValue" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to PreferredStockValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="CommonStockValue" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to CommonStockValue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="AdditionalPaidInCapital" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to AdditionalPaidInCapital" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to RetainedEarningsAccumulatedDeficit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="StockholdersEquity" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to StockholdersEquity" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MinorityInterest" xlink:label="MinorityInterest" xlink:title="MinorityInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="MinorityInterest" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to MinorityInterest" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesAndStockholdersEquity" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesAndStockholdersEquity" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="presentation: AssetsCurrentAbstract to AllowanceForDoubtfulAccountsReceivableCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsCurrentAbstract" xlink:title="presentation: AssetsAbstract to AssetsCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="PreferredStockParOrStatedValuePerShare" xlink:title="PreferredStockParOrStatedValuePerShare" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="PreferredStockParOrStatedValuePerShare" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to PreferredStockParOrStatedValuePerShare" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="PreferredStockSharesAuthorized" xlink:title="PreferredStockSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="PreferredStockSharesAuthorized" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to PreferredStockSharesAuthorized" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="PreferredStockSharesIssued" xlink:title="PreferredStockSharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="PreferredStockSharesIssued" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to PreferredStockSharesIssued" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="PreferredStockSharesOutstanding" xlink:title="PreferredStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="PreferredStockSharesOutstanding" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to PreferredStockSharesOutstanding" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="CommonStockParOrStatedValuePerShare" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to CommonStockParOrStatedValuePerShare" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="CommonStockSharesAuthorized" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to CommonStockSharesAuthorized" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="CommonStockSharesIssued" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to CommonStockSharesIssued" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="CommonStockSharesOutstanding" xlink:title="presentation: StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract to CommonStockSharesOutstanding" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfIncome">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: IncomeStatementAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="CostOfGoodsAndServicesSold" xlink:title="presentation: IncomeStatementAbstract to CostOfGoodsAndServicesSold" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="GrossProfit" xlink:title="presentation: IncomeStatementAbstract to GrossProfit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="OperatingExpensesAbstract" xlink:title="OperatingExpensesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="SellingGeneralAndAdministrativeExpense" xlink:title="SellingGeneralAndAdministrativeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="SellingGeneralAndAdministrativeExpense" xlink:title="presentation: OperatingExpensesAbstract to SellingGeneralAndAdministrativeExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="ResearchAndDevelopmentExpense" xlink:title="presentation: OperatingExpensesAbstract to ResearchAndDevelopmentExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="OperatingExpenses" xlink:title="presentation: OperatingExpensesAbstract to OperatingExpenses" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingExpensesAbstract" xlink:title="presentation: IncomeStatementAbstract to OperatingExpensesAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="GainLossOnSaleOfPropertyPlantEquipment" xlink:title="GainLossOnSaleOfPropertyPlantEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="GainLossOnSaleOfPropertyPlantEquipment" xlink:title="presentation: IncomeStatementAbstract to GainLossOnSaleOfPropertyPlantEquipment" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to OperatingIncomeLoss" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="NonoperatingIncomeExpenseAbstract" xlink:title="NonoperatingIncomeExpenseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="ForeignCurrencyTransactionGainLossBeforeTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="ForeignCurrencyTransactionGainLossBeforeTax" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to ForeignCurrencyTransactionGainLossBeforeTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to OtherNonoperatingIncomeExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_InterestExpenseNetOfSubsidies" xlink:label="InterestExpenseNetOfSubsidies" xlink:title="InterestExpenseNetOfSubsidies" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="InterestExpenseNetOfSubsidies" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to InterestExpenseNetOfSubsidies" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NonoperatingIncomeExpenseAbstract" xlink:title="presentation: IncomeStatementAbstract to NonoperatingIncomeExpenseAbstract" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="presentation: IncomeStatementAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeStatementAbstract to IncomeTaxExpenseBenefit" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="ProfitLoss" xlink:title="presentation: IncomeStatementAbstract to ProfitLoss" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="NetIncomeLossAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NetIncomeLossAttributableToNoncontrollingInterest" xlink:title="presentation: IncomeStatementAbstract to NetIncomeLossAttributableToNoncontrollingInterest" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to NetIncomeLoss" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="EarningsPerShareAbstract" xlink:title="presentation: IncomeStatementAbstract to EarningsPerShareAbstract" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="presentation: IncomeStatementAbstract to WeightedAverageNumberOfSharesOutstandingAbstract" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="ProfitLoss" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to ProfitLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:title="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="presentation: OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:label="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" xlink:title="presentation: OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract to OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="OtherComprehensiveIncomeLossNetOfTax" xlink:title="OtherComprehensiveIncomeLossNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="OtherComprehensiveIncomeLossNetOfTax" xlink:title="presentation: OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract to OtherComprehensiveIncomeLossNetOfTax" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="ComprehensiveIncomeNetOfTax" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to ComprehensiveIncomeNetOfTax" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTax" xlink:label="OtherComprehensiveIncomeLossTax" xlink:title="OtherComprehensiveIncomeLossTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="OtherComprehensiveIncomeLossTax" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to OtherComprehensiveIncomeLossTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="StatementOfStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="CommonStockMember" xlink:title="presentation: StatementEquityComponentsAxis to CommonStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AdditionalPaidInCapitalMember" xlink:title="presentation: StatementEquityComponentsAxis to AdditionalPaidInCapitalMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="RetainedEarningsMember" xlink:title="presentation: StatementEquityComponentsAxis to RetainedEarningsMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="TreasuryStockCommonMember" xlink:title="presentation: StatementEquityComponentsAxis to TreasuryStockCommonMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="presentation: StatementEquityComponentsAxis to AccumulatedOtherComprehensiveIncomeMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="NoncontrollingInterestMember" xlink:title="NoncontrollingInterestMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="NoncontrollingInterestMember" xlink:title="presentation: StatementEquityComponentsAxis to NoncontrollingInterestMember" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="presentation: StatementEquityComponentsAxis to EquityComponentDomain" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="presentation: StatementTable to StatementEquityComponentsAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:title="presentation: StatementLineItems to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="SharesOutstanding" xlink:title="SharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="SharesOutstanding" xlink:title="presentation: StatementLineItems to SharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="ProfitLoss" xlink:title="presentation: StatementLineItems to ProfitLoss" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="OtherComprehensiveIncomeLossNetOfTax" xlink:title="OtherComprehensiveIncomeLossNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="OtherComprehensiveIncomeLossNetOfTax" xlink:title="presentation: StatementLineItems to OtherComprehensiveIncomeLossNetOfTax" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="StockIssuedDuringPeriodValueShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodValueShareBasedCompensation" xlink:title="presentation: StatementLineItems to StockIssuedDuringPeriodValueShareBasedCompensation" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="StockIssuedDuringPeriodSharesShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:title="presentation: StatementLineItems to StockIssuedDuringPeriodSharesShareBasedCompensation" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="presentation: StatementLineItems to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:label="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" xlink:title="presentation: StatementLineItems to NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="TreasuryStockValueAcquiredCostMethod" xlink:title="TreasuryStockValueAcquiredCostMethod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="TreasuryStockValueAcquiredCostMethod" xlink:title="presentation: StatementLineItems to TreasuryStockValueAcquiredCostMethod" order="8.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="TreasuryStockSharesAcquired" xlink:title="TreasuryStockSharesAcquired" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="TreasuryStockSharesAcquired" xlink:title="presentation: StatementLineItems to TreasuryStockSharesAcquired" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockRetiredCostMethodAmount" xlink:label="TreasuryStockRetiredCostMethodAmount" xlink:title="TreasuryStockRetiredCostMethodAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="TreasuryStockRetiredCostMethodAmount" xlink:title="presentation: StatementLineItems to TreasuryStockRetiredCostMethodAmount" order="10.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesRetired" xlink:label="TreasuryStockSharesRetired" xlink:title="TreasuryStockSharesRetired" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="TreasuryStockSharesRetired" xlink:title="presentation: StatementLineItems to TreasuryStockSharesRetired" order="11.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2" xlink:title="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2" xlink:title="presentation: StatementLineItems to StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="SharesOutstanding_2" xlink:title="SharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="SharesOutstanding_2" xlink:title="presentation: StatementLineItems to SharesOutstanding" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementLineItems" xlink:title="presentation: StatementTable to StatementLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="StatementTable" xlink:title="presentation: StatementOfStockholdersEquityAbstract to StatementTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="ProfitLoss" xlink:title="ProfitLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="ProfitLoss" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to ProfitLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="DepreciationDepletionAndAmortization" xlink:title="DepreciationDepletionAndAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="DepreciationDepletionAndAmortization" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to DepreciationDepletionAndAmortization" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="AmortizationOfIntangibleAssets" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to AmortizationOfIntangibleAssets" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="ShareBasedCompensation" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to ShareBasedCompensation" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to DeferredIncomeTaxExpenseBenefit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsReceivable" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInInventories" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInInventories" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOtherCurrentAssets" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOtherCurrentAssets" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to IncreaseDecreaseInOperatingCapitalAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to NetCashProvidedByUsedInOperatingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsToAcquirePropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireShortTermInvestments" xlink:label="PaymentsToAcquireShortTermInvestments" xlink:title="PaymentsToAcquireShortTermInvestments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsToAcquireShortTermInvestments" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsToAcquireShortTermInvestments" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:label="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProceedsFromGovernmentIncentives" xlink:label="ProceedsFromGovernmentIncentives" xlink:title="ProceedsFromGovernmentIncentives" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="ProceedsFromGovernmentIncentives" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to ProceedsFromGovernmentIncentives" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="PaymentsToAcquireIntangibleAssets" xlink:title="PaymentsToAcquireIntangibleAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsToAcquireIntangibleAssets" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsToAcquireIntangibleAssets" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="PaymentsForProceedsFromOtherInvestingActivities" xlink:title="PaymentsForProceedsFromOtherInvestingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsForProceedsFromOtherInvestingActivities" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsForProceedsFromOtherInvestingActivities" order="5.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to NetCashProvidedByUsedInInvestingActivities" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInInvestingActivitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations" xlink:label="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="RepaymentsOfDebtAndCapitalLeaseObligations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="RepaymentsOfDebtAndCapitalLeaseObligations" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to RepaymentsOfDebtAndCapitalLeaseObligations" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="PaymentsForRepurchaseOfCommonStock" xlink:title="PaymentsForRepurchaseOfCommonStock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="PaymentsForRepurchaseOfCommonStock" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to PaymentsForRepurchaseOfCommonStock" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromMinorityShareholders" xlink:label="ProceedsFromMinorityShareholders" xlink:title="ProceedsFromMinorityShareholders" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="ProceedsFromMinorityShareholders" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to ProceedsFromMinorityShareholders" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NetSettlementsOfRestrictedStockAwards" xlink:label="NetSettlementsOfRestrictedStockAwards" xlink:title="NetSettlementsOfRestrictedStockAwards" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="NetSettlementsOfRestrictedStockAwards" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to NetSettlementsOfRestrictedStockAwards" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to NetCashProvidedByUsedInFinancingActivities" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInFinancingActivitiesAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCash" xlink:label="RestrictedCash" xlink:title="RestrictedCash" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="RestrictedCash" xlink:title="presentation: StatementOfCashFlowsAbstract to RestrictedCash" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="presentation: StatementOfCashFlowsAbstract to CashAndCashEquivalentsAtCarryingValue" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="SupplementalCashFlowInformationAbstract" xlink:title="SupplementalCashFlowInformationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="CapitalExpendituresIncurredButNotYetPaid" xlink:title="CapitalExpendituresIncurredButNotYetPaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SupplementalCashFlowInformationAbstract" xlink:to="CapitalExpendituresIncurredButNotYetPaid" xlink:title="presentation: SupplementalCashFlowInformationAbstract to CapitalExpendituresIncurredButNotYetPaid" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ExpectedRefundableFederalInvestmentTaxCredit" xlink:label="ExpectedRefundableFederalInvestmentTaxCredit" xlink:title="ExpectedRefundableFederalInvestmentTaxCredit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SupplementalCashFlowInformationAbstract" xlink:to="ExpectedRefundableFederalInvestmentTaxCredit" xlink:title="presentation: SupplementalCashFlowInformationAbstract to ExpectedRefundableFederalInvestmentTaxCredit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="SupplementalCashFlowInformationAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to SupplementalCashFlowInformationAbstract" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="SignificantAccountingPoliciesTextBlock" xlink:title="SignificantAccountingPoliciesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="SignificantAccountingPoliciesTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to SignificantAccountingPoliciesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivable">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrentAbstract" xlink:label="AccountsReceivableNetCurrentAbstract" xlink:title="AccountsReceivableNetCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:title="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:label="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:title="PrepaidExpenseAndOtherAssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentAssetsTextBlock" xlink:label="OtherCurrentAssetsTextBlock" xlink:title="OtherCurrentAssetsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="OtherCurrentAssetsTextBlock" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to OtherCurrentAssetsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/Inventories">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="InventoryDisclosureTextBlock" xlink:title="InventoryDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryDisclosureTextBlock" xlink:title="presentation: InventoryDisclosureAbstract to InventoryDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNet">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="PropertyPlantAndEquipmentDisclosureTextBlock" xlink:title="PropertyPlantAndEquipmentDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="PropertyPlantAndEquipmentDisclosureTextBlock" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to PropertyPlantAndEquipmentDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVenture">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityDisclosureTextBlock" xlink:label="VariableInterestEntityDisclosureTextBlock" xlink:title="VariableInterestEntityDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="VariableInterestEntityDisclosureTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to VariableInterestEntityDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilities">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="AccruedLiabilitiesCurrentAbstract" xlink:title="AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:title="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/Debt">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtDisclosureTextBlock" xlink:title="presentation: DebtDisclosureAbstract to DebtDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilities">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:label="OtherLiabilitiesDisclosureAbstract" xlink:title="OtherLiabilitiesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureTextBlock" xlink:label="OtherLiabilitiesDisclosureTextBlock" xlink:title="OtherLiabilitiesDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="OtherLiabilitiesDisclosureTextBlock" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to OtherLiabilitiesDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/Revenue">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="RevenueFromContractWithCustomerTextBlock" xlink:title="RevenueFromContractWithCustomerTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="RevenueFromContractWithCustomerTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to RevenueFromContractWithCustomerTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/Leases">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="LesseeOperatingLeasesTextBlock" xlink:title="LesseeOperatingLeasesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeasesTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeasesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/EmployeeRetirementPlans">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="CompensationAndRetirementDisclosureAbstract" xlink:title="CompensationAndRetirementDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:title="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to PensionAndOtherPostretirementBenefitsDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxes">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxDisclosureTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShare">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareTextBlock" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingencies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="presentation: CommitmentsAndContingenciesDisclosureAbstract to CommitmentsAndContingenciesDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:label="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:title="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="OtherComprehensiveIncomeNoncontrollingInterestTextBlock" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract to OtherComprehensiveIncomeNoncontrollingInterestTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="RisksAndUncertaintiesAbstract" xlink:title="RisksAndUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="ConcentrationRiskDisclosureTextBlock" xlink:title="ConcentrationRiskDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RisksAndUncertaintiesAbstract" xlink:to="ConcentrationRiskDisclosureTextBlock" xlink:title="presentation: RisksAndUncertaintiesAbstract to ConcentrationRiskDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RelatedPartyTransactions">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="RelatedPartyTransactionsAbstract" xlink:title="RelatedPartyTransactionsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="RelatedPartyTransactionsDisclosureTextBlock" xlink:title="RelatedPartyTransactionsDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RelatedPartyTransactionsAbstract" xlink:to="RelatedPartyTransactionsDisclosureTextBlock" xlink:title="presentation: RelatedPartyTransactionsAbstract to RelatedPartyTransactionsDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurements">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="FairValueDisclosuresAbstract" xlink:title="FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="FairValueDisclosuresTextBlock" xlink:title="FairValueDisclosuresTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueDisclosuresAbstract" xlink:to="FairValueDisclosuresTextBlock" xlink:title="presentation: FairValueDisclosuresAbstract to FairValueDisclosuresTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchasePrograms">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:label="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:title="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTextBlock" xlink:label="TreasuryStockTextBlock" xlink:title="TreasuryStockTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:to="TreasuryStockTextBlock" xlink:title="presentation: TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract to TreasuryStockTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/InsiderTradingArrangements">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_InsiderTradingArrLineItems" xlink:label="InsiderTradingArrLineItems" xlink:title="InsiderTradingArrLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_Rule10b51ArrAdoptedFlag" xlink:label="Rule10b51ArrAdoptedFlag" xlink:title="Rule10b51ArrAdoptedFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InsiderTradingArrLineItems" xlink:to="Rule10b51ArrAdoptedFlag" xlink:title="presentation: InsiderTradingArrLineItems to Rule10b51ArrAdoptedFlag" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_NonRule10b51ArrAdoptedFlag" xlink:label="NonRule10b51ArrAdoptedFlag" xlink:title="NonRule10b51ArrAdoptedFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InsiderTradingArrLineItems" xlink:to="NonRule10b51ArrAdoptedFlag" xlink:title="presentation: InsiderTradingArrLineItems to NonRule10b51ArrAdoptedFlag" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_Rule10b51ArrTrmntdFlag" xlink:label="Rule10b51ArrTrmntdFlag" xlink:title="Rule10b51ArrTrmntdFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InsiderTradingArrLineItems" xlink:to="Rule10b51ArrTrmntdFlag" xlink:title="presentation: InsiderTradingArrLineItems to Rule10b51ArrTrmntdFlag" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_NonRule10b51ArrTrmntdFlag" xlink:label="NonRule10b51ArrTrmntdFlag" xlink:title="NonRule10b51ArrTrmntdFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InsiderTradingArrLineItems" xlink:to="NonRule10b51ArrTrmntdFlag" xlink:title="presentation: InsiderTradingArrLineItems to NonRule10b51ArrTrmntdFlag" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="ConsolidationPolicyTextBlock" xlink:title="ConsolidationPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ConsolidationPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ConsolidationPolicyTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="UseOfEstimates" xlink:title="UseOfEstimates" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="UseOfEstimates" xlink:title="presentation: AccountingPoliciesAbstract to UseOfEstimates" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ForeignCurrencyTransactionsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ForeignCurrencyTransactionsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ForeignCurrencyTransactionsPolicyTextBlock" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="CashAndCashEquivalentsPolicyTextBlock" xlink:title="CashAndCashEquivalentsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CashAndCashEquivalentsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to CashAndCashEquivalentsPolicyTextBlock" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:label="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:title="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:title="presentation: AccountingPoliciesAbstract to CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="InvestmentPolicyTextBlock" xlink:title="InvestmentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="InvestmentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to InvestmentPolicyTextBlock" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to CreditLossFinancialInstrumentPolicyTextBlock" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="InventoryPolicyTextBlock" xlink:title="InventoryPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="InventoryPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to InventoryPolicyTextBlock" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to PropertyPlantAndEquipmentPolicyTextBlock" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_TreasuryStockPolicyTextBlock" xlink:label="TreasuryStockPolicyTextBlock" xlink:title="TreasuryStockPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="TreasuryStockPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to TreasuryStockPolicyTextBlock" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="RevenueRecognitionPolicyTextBlock" xlink:title="RevenueRecognitionPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="RevenueRecognitionPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to RevenueRecognitionPolicyTextBlock" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="LesseeLeasesPolicyTextBlock" xlink:title="LesseeLeasesPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="LesseeLeasesPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to LesseeLeasesPolicyTextBlock" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="presentation: AccountingPoliciesAbstract to ShareBasedCompensationOptionAndIncentivePlansPolicy" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="ResearchAndDevelopmentExpensePolicy" xlink:title="ResearchAndDevelopmentExpensePolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ResearchAndDevelopmentExpensePolicy" xlink:title="presentation: AccountingPoliciesAbstract to ResearchAndDevelopmentExpensePolicy" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_GovernmentGrantsPolicyTextBlock" xlink:label="GovernmentGrantsPolicyTextBlock" xlink:title="GovernmentGrantsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="GovernmentGrantsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to GovernmentGrantsPolicyTextBlock" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="IncomeTaxPolicyTextBlock" xlink:title="IncomeTaxPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="IncomeTaxPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to IncomeTaxPolicyTextBlock" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="EarningsPerSharePolicyTextBlock" xlink:title="EarningsPerSharePolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="EarningsPerSharePolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to EarningsPerSharePolicyTextBlock" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationVariableInterestEntityPolicy" xlink:label="ConsolidationVariableInterestEntityPolicy" xlink:title="ConsolidationVariableInterestEntityPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ConsolidationVariableInterestEntityPolicy" xlink:title="presentation: AccountingPoliciesAbstract to ConsolidationVariableInterestEntityPolicy" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:title="NewAccountingPronouncementsPolicyPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to NewAccountingPronouncementsPolicyPolicyTextBlock" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVenturePolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:label="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:title="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenuePolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to RevenueFromContractWithCustomerPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="EmployeeStockOptionMember" xlink:title="EmployeeStockOptionMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockOptionMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockOptionMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to ShareBasedCompensationOptionAndIncentivePlansPolicy" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EmployeeStockPurchasePlanPolicyTextBlock" xlink:label="EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="EmployeeStockPurchasePlanPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="EmployeeStockPurchasePlanPolicyTextBlock" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to EmployeeStockPurchasePlanPolicyTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnremittedEarningsInForeignInvestmentPolicy" xlink:label="UnremittedEarningsInForeignInvestmentPolicy" xlink:title="UnremittedEarningsInForeignInvestmentPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="UnremittedEarningsInForeignInvestmentPolicy" xlink:title="presentation: IncomeTaxDisclosureAbstract to UnremittedEarningsInForeignInvestmentPolicy" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxUncertaintiesPolicy" xlink:label="IncomeTaxUncertaintiesPolicy" xlink:title="IncomeTaxUncertaintiesPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxUncertaintiesPolicy" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxUncertaintiesPolicy" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="FairValueDisclosuresAbstract" xlink:title="FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="FairValueMeasurementPolicyPolicyTextBlock" xlink:title="FairValueMeasurementPolicyPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueDisclosuresAbstract" xlink:to="FairValueMeasurementPolicyPolicyTextBlock" xlink:title="presentation: FairValueDisclosuresAbstract to FairValueMeasurementPolicyPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:label="DebtSecuritiesAvailableForSaleTableTextBlock" xlink:title="DebtSecuritiesAvailableForSaleTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="DebtSecuritiesAvailableForSaleTableTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to DebtSecuritiesAvailableForSaleTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivableTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrentAbstract" xlink:label="AccountsReceivableNetCurrentAbstract" xlink:title="AccountsReceivableNetCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:title="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssetsTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:label="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:title="PrepaidExpenseAndOtherAssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:label="ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:title="ScheduleOfOtherCurrentAssetsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="ScheduleOfOtherCurrentAssetsTableTextBlock" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to ScheduleOfOtherCurrentAssetsTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/InventoriesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="presentation: InventoryDisclosureAbstract to ScheduleOfInventoryCurrentTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNetTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="PropertyPlantAndEquipmentTextBlock" xlink:title="PropertyPlantAndEquipmentTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="PropertyPlantAndEquipmentTextBlock" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to PropertyPlantAndEquipmentTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:label="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:title="FinanceLeaseRightOfUseAssetsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="FinanceLeaseRightOfUseAssetsTableTextBlock" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to FinanceLeaseRightOfUseAssetsTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DepreciationAndAmortizationExpenseTableTextBlock" xlink:label="DepreciationAndAmortizationExpenseTableTextBlock" xlink:title="DepreciationAndAmortizationExpenseTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="DepreciationAndAmortizationExpenseTableTextBlock" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to DepreciationAndAmortizationExpenseTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:label="ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:title="ScheduleOfCondensedIncomeStatementTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="ScheduleOfCondensedIncomeStatementTableTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to ScheduleOfCondensedIncomeStatementTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTextBlock" xlink:label="ScheduleOfVariableInterestEntitiesTextBlock" xlink:title="ScheduleOfVariableInterestEntitiesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="ScheduleOfVariableInterestEntitiesTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to ScheduleOfVariableInterestEntitiesTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilitiesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="AccruedLiabilitiesCurrentAbstract" xlink:title="AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentLiabilitiesTableTextBlock" xlink:label="OtherCurrentLiabilitiesTableTextBlock" xlink:title="OtherCurrentLiabilitiesTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="OtherCurrentLiabilitiesTableTextBlock" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to OtherCurrentLiabilitiesTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="ScheduleOfDebtTableTextBlock" xlink:title="ScheduleOfDebtTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="ScheduleOfDebtTableTextBlock" xlink:title="presentation: DebtDisclosureAbstract to ScheduleOfDebtTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilitiesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:label="OtherLiabilitiesDisclosureAbstract" xlink:title="OtherLiabilitiesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesTableTextBlock" xlink:label="OtherLiabilitiesTableTextBlock" xlink:title="OtherLiabilitiesTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="OtherLiabilitiesTableTextBlock" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to OtherLiabilitiesTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DisaggregationOfRevenueTableTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DisaggregationOfRevenueTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerAssetAndLiabilityTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:label="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:title="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" xlink:title="presentation: LeasesAbstract to InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:label="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:title="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" xlink:title="presentation: LeasesAbstract to FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="LeaseCostTableTextBlock" xlink:title="LeaseCostTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LeaseCostTableTextBlock" xlink:title="presentation: LeasesAbstract to LeaseCostTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:label="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:title="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:label="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:title="CashAndNonCashInformationRelatedToLeasesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="CashAndNonCashInformationRelatedToLeasesTextBlock" xlink:title="presentation: LeasesAbstract to CashAndNonCashInformationRelatedToLeasesTextBlock" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:title="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:label="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:title="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:title="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:title="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:title="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:title="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock" xlink:label="SummaryOfOperatingLossCarryforwardsTextBlock" xlink:title="SummaryOfOperatingLossCarryforwardsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="SummaryOfOperatingLossCarryforwardsTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to SummaryOfOperatingLossCarryforwardsTextBlock" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock" xlink:label="SummaryOfTaxCreditCarryforwardsTextBlock" xlink:title="SummaryOfTaxCreditCarryforwardsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="SummaryOfTaxCreditCarryforwardsTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to SummaryOfTaxCreditCarryforwardsTextBlock" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:title="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:label="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:title="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfUnrecognizedTaxBenefitsTableTextBlock" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:label="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:title="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShareTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingenciesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:label="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:title="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:title="presentation: CommitmentsAndContingenciesDisclosureAbstract to ContractualObligationFiscalYearMaturityScheduleTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:title="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract to ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrationsTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="RisksAndUncertaintiesAbstract" xlink:title="RisksAndUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableMember" xlink:label="AccountsReceivableMember" xlink:title="AccountsReceivableMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="AccountsReceivableMember" xlink:title="presentation: ConcentrationRiskBenchmarkDomain to AccountsReceivableMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="presentation: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="presentation: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByBenchmarkAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="ConcentrationRiskLineItems" xlink:title="ConcentrationRiskLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskLineItems" xlink:to="SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:title="presentation: ConcentrationRiskLineItems to SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:label="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="LongLivedAssetsByGeographicAreasTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskLineItems" xlink:to="LongLivedAssetsByGeographicAreasTableTextBlock" xlink:title="presentation: ConcentrationRiskLineItems to LongLivedAssetsByGeographicAreasTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskLineItems" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RisksAndUncertaintiesAbstract" xlink:to="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="presentation: RisksAndUncertaintiesAbstract to ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="FairValueDisclosuresAbstract" xlink:title="FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:label="FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:title="FairValueAssetsMeasuredOnRecurringBasisTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueDisclosuresAbstract" xlink:to="FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:title="presentation: FairValueDisclosuresAbstract to FairValueAssetsMeasuredOnRecurringBasisTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchaseProgramsTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:label="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:title="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfTreasuryStockByClassTextBlock" xlink:label="ScheduleOfTreasuryStockByClassTextBlock" xlink:title="ScheduleOfTreasuryStockByClassTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:to="ScheduleOfTreasuryStockByClassTextBlock" xlink:title="presentation: TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract to ScheduleOfTreasuryStockByClassTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionTable" xlink:label="ManufacturingFacilitiesByGeographicalRegionTable" xlink:title="ManufacturingFacilitiesByGeographicalRegionTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="presentation: SegmentGeographicalDomain to TW" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="presentation: SegmentGeographicalDomain to CN" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="presentation: SegmentGeographicalDomain to KR" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_EuropeMember" xlink:label="EuropeMember" xlink:title="EuropeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeMember" xlink:title="presentation: SegmentGeographicalDomain to EuropeMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ManufacturingFacilitiesByGeographicalRegionTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: ManufacturingFacilitiesByGeographicalRegionTable to StatementGeographicalAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:label="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:title="ManufacturingFacilitiesByGeographicalRegionLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ManufacturingFacilitiesAbstract" xlink:label="ManufacturingFacilitiesAbstract" xlink:title="ManufacturingFacilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfManufacturingFacilities" xlink:label="NumberOfManufacturingFacilities" xlink:title="NumberOfManufacturingFacilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ManufacturingFacilitiesAbstract" xlink:to="NumberOfManufacturingFacilities" xlink:title="presentation: ManufacturingFacilitiesAbstract to NumberOfManufacturingFacilities" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:to="ManufacturingFacilitiesAbstract" xlink:title="presentation: ManufacturingFacilitiesByGeographicalRegionLineItems to ManufacturingFacilitiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ManufacturingFacilitiesByGeographicalRegionTable" xlink:to="ManufacturingFacilitiesByGeographicalRegionLineItems" xlink:title="presentation: ManufacturingFacilitiesByGeographicalRegionTable to ManufacturingFacilitiesByGeographicalRegionLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ManufacturingFacilitiesByGeographicalRegionTable" xlink:title="presentation: AccountingPoliciesAbstract to ManufacturingFacilitiesByGeographicalRegionTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PrinciplesOfConsolidationAbstract" xlink:label="PrinciplesOfConsolidationAbstract" xlink:title="PrinciplesOfConsolidationAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PercentageOfOwnershipInterestInSubsidiaries" xlink:label="PercentageOfOwnershipInterestInSubsidiaries" xlink:title="PercentageOfOwnershipInterestInSubsidiaries" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrinciplesOfConsolidationAbstract" xlink:to="PercentageOfOwnershipInterestInSubsidiaries" xlink:title="presentation: PrinciplesOfConsolidationAbstract to PercentageOfOwnershipInterestInSubsidiaries" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="PrinciplesOfConsolidationAbstract" xlink:title="presentation: AccountingPoliciesAbstract to PrinciplesOfConsolidationAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAbstract" xlink:label="RestrictedCashAbstract" xlink:title="RestrictedCashAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCash" xlink:label="RestrictedCash" xlink:title="RestrictedCash" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedCashAbstract" xlink:to="RestrictedCash" xlink:title="presentation: RestrictedCashAbstract to RestrictedCash" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="RestrictedCashAbstract" xlink:title="presentation: AccountingPoliciesAbstract to RestrictedCashAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAbstract" xlink:label="InvestmentsAbstract" xlink:title="InvestmentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:label="DebtSecuritiesAvailableForSaleTable" xlink:title="DebtSecuritiesAvailableForSaleTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="FinancialInstrumentAxis" xlink:title="FinancialInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_USTreasuryAndGovernmentMember" xlink:label="USTreasuryAndGovernmentMember" xlink:title="USTreasuryAndGovernmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="USTreasuryAndGovernmentMember" xlink:title="presentation: TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain to USTreasuryAndGovernmentMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="presentation: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FinancialInstrumentAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to FinancialInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="CashAndCashEquivalentsAxis" xlink:title="CashAndCashEquivalentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BankTimeDepositsMember" xlink:label="BankTimeDepositsMember" xlink:title="BankTimeDepositsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="BankTimeDepositsMember" xlink:title="presentation: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to BankTimeDepositsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="presentation: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="CashAndCashEquivalentsAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to CashAndCashEquivalentsAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:label="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:label="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="AvailableForSaleDebtSecuritiesAmortizedCostBasis" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:to="AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:title="presentation: AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract to AvailableForSaleDebtSecuritiesAmortizedCostBasis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:title="presentation: AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:label="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:to="AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:title="presentation: AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract to AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:label="AvailableForSaleSecuritiesDebtSecurities" xlink:title="AvailableForSaleSecuritiesDebtSecurities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:to="AvailableForSaleSecuritiesDebtSecurities" xlink:title="presentation: AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract to AvailableForSaleSecuritiesDebtSecurities" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" xlink:title="presentation: ScheduleOfAvailableForSaleSecuritiesLineItems to AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to ScheduleOfAvailableForSaleSecuritiesLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentsAbstract" xlink:to="DebtSecuritiesAvailableForSaleTable" xlink:title="presentation: InvestmentsAbstract to DebtSecuritiesAvailableForSaleTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="InvestmentsAbstract" xlink:title="presentation: AccountingPoliciesAbstract to InvestmentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="presentation: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to RangeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="PropertyPlantAndEquipmentUsefulLife" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to PropertyPlantAndEquipmentUsefulLife" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentAbstract" xlink:title="presentation: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentLineItems" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfPropertyPlantAndEquipmentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IntegratedCircuitsMember" xlink:label="IntegratedCircuitsMember" xlink:title="IntegratedCircuitsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="IntegratedCircuitsMember" xlink:title="presentation: ProductsAndServicesDomain to IntegratedCircuitsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FlatPanelDisplaysMember" xlink:label="FlatPanelDisplaysMember" xlink:title="FlatPanelDisplaysMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="FlatPanelDisplaysMember" xlink:title="presentation: ProductsAndServicesDomain to FlatPanelDisplaysMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="presentation: ProductOrServiceAxis to ProductsAndServicesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="presentation: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="presentation: DisaggregationOfRevenueTable to RangeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRecognitionAbstract" xlink:label="RevenueRecognitionAbstract" xlink:title="RevenueRecognitionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostImpairmentLoss" xlink:label="CapitalizedContractCostImpairmentLoss" xlink:title="CapitalizedContractCostImpairmentLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="CapitalizedContractCostImpairmentLoss" xlink:title="presentation: ContractWithCustomerAssetAndLiabilityAbstract to CapitalizedContractCostImpairmentLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="AllowanceForDoubtfulAccountsReceivableWriteOffs" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:title="presentation: ContractWithCustomerAssetAndLiabilityAbstract to AllowanceForDoubtfulAccountsReceivableWriteOffs" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRecognitionAbstract" xlink:to="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="presentation: RevenueRecognitionAbstract to ContractWithCustomerAssetAndLiabilityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_BacklogOfOrdersAbstract" xlink:label="BacklogOfOrdersAbstract" xlink:title="BacklogOfOrdersAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExpectedTimingOfSatisfactionPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BacklogOfOrdersAbstract" xlink:to="CustomerOrdersExpectedTimingOfSatisfactionPeriod" xlink:title="presentation: BacklogOfOrdersAbstract to CustomerOrdersExpectedTimingOfSatisfactionPeriod" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:label="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="CustomerOrdersExtendedTimingOfSatisfactionPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BacklogOfOrdersAbstract" xlink:to="CustomerOrdersExtendedTimingOfSatisfactionPeriod" xlink:title="presentation: BacklogOfOrdersAbstract to CustomerOrdersExtendedTimingOfSatisfactionPeriod" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRecognitionAbstract" xlink:to="BacklogOfOrdersAbstract" xlink:title="presentation: RevenueRecognitionAbstract to BacklogOfOrdersAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductWarrantyAbstract" xlink:label="ProductWarrantyAbstract" xlink:title="ProductWarrantyAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PeriodOfWarranty" xlink:label="PeriodOfWarranty" xlink:title="PeriodOfWarranty" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductWarrantyAbstract" xlink:to="PeriodOfWarranty" xlink:title="presentation: ProductWarrantyAbstract to PeriodOfWarranty" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRecognitionAbstract" xlink:to="ProductWarrantyAbstract" xlink:title="presentation: RevenueRecognitionAbstract to ProductWarrantyAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueRecognitionAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to RevenueRecognitionAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="DisaggregationOfRevenueLineItems" xlink:title="presentation: DisaggregationOfRevenueTable to DisaggregationOfRevenueLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="DisaggregationOfRevenueTable" xlink:title="presentation: AccountingPoliciesAbstract to DisaggregationOfRevenueTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseAbstract" xlink:label="ResearchAndDevelopmentExpenseAbstract" xlink:title="ResearchAndDevelopmentExpenseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ResearchAndDevelopmentExpenseAbstract" xlink:to="ResearchAndDevelopmentExpense" xlink:title="presentation: ResearchAndDevelopmentExpenseAbstract to ResearchAndDevelopmentExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ResearchAndDevelopmentExpenseAbstract" xlink:title="presentation: AccountingPoliciesAbstract to ResearchAndDevelopmentExpenseAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_GovernmentGrantsAbstract" xlink:label="GovernmentGrantsAbstract" xlink:title="GovernmentGrantsAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IncreaseDecreaseInPropertyAndEquipmentNet" xlink:label="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:title="IncreaseDecreaseInPropertyAndEquipmentNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="GovernmentGrantsAbstract" xlink:to="IncreaseDecreaseInPropertyAndEquipmentNet" xlink:title="presentation: GovernmentGrantsAbstract to IncreaseDecreaseInPropertyAndEquipmentNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="GovernmentGrantsAbstract" xlink:title="presentation: AccountingPoliciesAbstract to GovernmentGrantsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to RangeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PhotronicsAndDNPMember" xlink:label="PhotronicsAndDNPMember" xlink:title="PhotronicsAndDNPMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PhotronicsAndDNPMember" xlink:title="presentation: ConsolidatedEntitiesDomain to PhotronicsAndDNPMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="presentation: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityAbstract" xlink:label="VariableInterestEntityAbstract" xlink:title="VariableInterestEntityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityOwnershipPercentage" xlink:label="VariableInterestEntityOwnershipPercentage" xlink:title="VariableInterestEntityOwnershipPercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="VariableInterestEntityOwnershipPercentage" xlink:title="presentation: VariableInterestEntityAbstract to VariableInterestEntityOwnershipPercentage" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityAbstract" xlink:title="presentation: VariableInterestEntityLineItems to VariableInterestEntityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="VariableInterestEntityLineItems" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to VariableInterestEntityLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfVariableInterestEntitiesTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccountsReceivableDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrentAbstract" xlink:label="AccountsReceivableNetCurrentAbstract" xlink:title="AccountsReceivableNetCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="AccountsReceivableGrossCurrent" xlink:title="AccountsReceivableGrossCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="AccountsReceivableGrossCurrent" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to AccountsReceivableGrossCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="UnbilledReceivablesCurrent" xlink:title="UnbilledReceivablesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="UnbilledReceivablesCurrent" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to UnbilledReceivablesCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to AllowanceForDoubtfulAccountsReceivableCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableNetCurrentAbstract" xlink:to="AccountsReceivableNetCurrent" xlink:title="presentation: AccountsReceivableNetCurrentAbstract to AccountsReceivableNetCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherCurrentAssetsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:label="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:title="PrepaidExpenseAndOtherAssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="ContractWithCustomerAssetNetCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to ContractWithCustomerAssetNetCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="PrepaidExpenseCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to PrepaidExpenseCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValueAddedTaxReceivableCurrent" xlink:label="ValueAddedTaxReceivableCurrent" xlink:title="ValueAddedTaxReceivableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="ValueAddedTaxReceivableCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to ValueAddedTaxReceivableCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PrepaidAndRefundableIncomeTaxes" xlink:label="PrepaidAndRefundableIncomeTaxes" xlink:title="PrepaidAndRefundableIncomeTaxes" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="PrepaidAndRefundableIncomeTaxes" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to PrepaidAndRefundableIncomeTaxes" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsMiscellaneousCurrent" xlink:label="OtherAssetsMiscellaneousCurrent" xlink:title="OtherAssetsMiscellaneousCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="OtherAssetsMiscellaneousCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to OtherAssetsMiscellaneousCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="OtherAssetsCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to OtherAssetsCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:label="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:title="FederalInvestmentTaxCreditsRefundReceivableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PrepaidExpenseAndOtherAssetsCurrentAbstract" xlink:to="FederalInvestmentTaxCreditsRefundReceivableCurrent" xlink:title="presentation: PrepaidExpenseAndOtherAssetsCurrentAbstract to FederalInvestmentTaxCreditsRefundReceivableCurrent" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/InventoriesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="InventoryRawMaterialsNetOfReserves" xlink:title="InventoryRawMaterialsNetOfReserves" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryRawMaterialsNetOfReserves" xlink:title="presentation: InventoryDisclosureAbstract to InventoryRawMaterialsNetOfReserves" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="InventoryWorkInProcess" xlink:title="InventoryWorkInProcess" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryWorkInProcess" xlink:title="presentation: InventoryDisclosureAbstract to InventoryWorkInProcess" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryFinishedGoods" xlink:title="presentation: InventoryDisclosureAbstract to InventoryFinishedGoods" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryNet" xlink:title="presentation: InventoryDisclosureAbstract to InventoryNet" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PropertyPlantAndEquipmentNetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="PropertyPlantAndEquipmentAbstract" xlink:title="PropertyPlantAndEquipmentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LandMember" xlink:label="LandMember" xlink:title="LandMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="LandMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to LandMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="LeaseholdImprovementsMember" xlink:title="LeaseholdImprovementsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="LeaseholdImprovementsMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to LeaseholdImprovementsMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConstructionInProgressMember" xlink:label="ConstructionInProgressMember" xlink:title="ConstructionInProgressMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="ConstructionInProgressMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to ConstructionInProgressMember" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="presentation: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract" xlink:label="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="PropertyPlantAndEquipmentNetByTypeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:to="PropertyPlantAndEquipmentGross" xlink:title="presentation: PropertyPlantAndEquipmentNetByTypeAbstract to PropertyPlantAndEquipmentGross" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="presentation: PropertyPlantAndEquipmentNetByTypeAbstract to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="presentation: PropertyPlantAndEquipmentNetByTypeAbstract to PropertyPlantAndEquipmentNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentNetByTypeAbstract" xlink:title="presentation: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentNetByTypeAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:label="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:to="FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:title="presentation: FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract to FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:label="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="FinanceLeaseRightOfUseAssetAccumulatedAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:to="FinanceLeaseRightOfUseAssetAccumulatedAmortization" xlink:title="presentation: FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract to FinanceLeaseRightOfUseAssetAccumulatedAmortization" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="FinanceLeaseRightOfUseAsset" xlink:title="FinanceLeaseRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:to="FinanceLeaseRightOfUseAsset" xlink:title="presentation: FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract to FinanceLeaseRightOfUseAsset" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" xlink:title="presentation: PropertyPlantAndEquipmentLineItems to FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:label="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="CostOfGoodsAndServicesSoldDepreciationAndAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:to="CostOfGoodsAndServicesSoldDepreciationAndAmortization" xlink:title="presentation: CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract to CostOfGoodsAndServicesSoldDepreciationAndAmortization" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" xlink:title="presentation: PropertyPlantAndEquipmentLineItems to CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentLineItems" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentAbstract" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="presentation: PropertyPlantAndEquipmentAbstract to ScheduleOfPropertyPlantAndEquipmentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureVieDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PhotronicsAndDNPMember" xlink:label="PhotronicsAndDNPMember" xlink:title="PhotronicsAndDNPMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PhotronicsAndDNPMember" xlink:title="presentation: ConsolidatedEntitiesDomain to PhotronicsAndDNPMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PDMCXMember" xlink:label="PDMCXMember" xlink:title="PDMCXMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PDMCXMember" xlink:title="presentation: ConsolidatedEntitiesDomain to PDMCXMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="presentation: ConsolidatedEntitiesDomain to VariableInterestEntityPrimaryBeneficiaryMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityNotPrimaryBeneficiaryMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityNotPrimaryBeneficiaryMember" xlink:title="presentation: ConsolidatedEntitiesDomain to VariableInterestEntityNotPrimaryBeneficiaryMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="presentation: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to RangeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityAbstract" xlink:label="VariableInterestEntityAbstract" xlink:title="VariableInterestEntityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityOwnershipPercentage" xlink:label="VariableInterestEntityOwnershipPercentage" xlink:title="VariableInterestEntityOwnershipPercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="VariableInterestEntityOwnershipPercentage" xlink:title="presentation: VariableInterestEntityAbstract to VariableInterestEntityOwnershipPercentage" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="presentation: VariableInterestEntityAbstract to LongTermDebtAndCapitalLeaseObligations" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:label="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" xlink:title="presentation: VariableInterestEntityAbstract to NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:label="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" xlink:title="presentation: VariableInterestEntityAbstract to NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityMeasureOfActivityAbstract" xlink:label="VariableInterestEntityMeasureOfActivityAbstract" xlink:title="VariableInterestEntityMeasureOfActivityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:label="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityMeasureOfActivityAbstract" xlink:to="VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" xlink:title="presentation: VariableInterestEntityMeasureOfActivityAbstract to VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityAbstract" xlink:to="VariableInterestEntityMeasureOfActivityAbstract" xlink:title="presentation: VariableInterestEntityAbstract to VariableInterestEntityMeasureOfActivityAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityAbstract" xlink:title="presentation: VariableInterestEntityLineItems to VariableInterestEntityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="VariableInterestEntityLineItems" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to VariableInterestEntityLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to ScheduleOfVariableInterestEntitiesTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfVariableInterestEntitiesTable" xlink:label="ScheduleOfVariableInterestEntitiesTable" xlink:title="ScheduleOfVariableInterestEntitiesTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="ConsolidatedEntitiesAxis" xlink:title="ConsolidatedEntitiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="ConsolidatedEntitiesDomain" xlink:title="ConsolidatedEntitiesDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_PDMCXMember" xlink:label="PDMCXMember" xlink:title="PDMCXMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="PDMCXMember" xlink:title="presentation: ConsolidatedEntitiesDomain to PDMCXMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityPrimaryBeneficiaryMember" xlink:label="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="VariableInterestEntityPrimaryBeneficiaryMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesDomain" xlink:to="VariableInterestEntityPrimaryBeneficiaryMember" xlink:title="presentation: ConsolidatedEntitiesDomain to VariableInterestEntityPrimaryBeneficiaryMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConsolidatedEntitiesAxis" xlink:to="ConsolidatedEntitiesDomain" xlink:title="presentation: ConsolidatedEntitiesAxis to ConsolidatedEntitiesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="ConsolidatedEntitiesAxis" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to ConsolidatedEntitiesAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableInterestEntityLineItems" xlink:label="VariableInterestEntityLineItems" xlink:title="VariableInterestEntityLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:label="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="AssetsCurrent" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to AssetsCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="AssetsNoncurrent" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to AssetsNoncurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="Assets" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to Assets" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="LiabilitiesCurrent" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to LiabilitiesCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="LiabilitiesNoncurrent" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to LiabilitiesNoncurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="Liabilities" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to Liabilities" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:to="AssetsNet" xlink:title="presentation: VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract to AssetsNet" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableInterestEntityLineItems" xlink:to="VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" xlink:title="presentation: VariableInterestEntityLineItems to VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfVariableInterestEntitiesTable" xlink:to="VariableInterestEntityLineItems" xlink:title="presentation: ScheduleOfVariableInterestEntitiesTable to VariableInterestEntityLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="ScheduleOfVariableInterestEntitiesTable" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to ScheduleOfVariableInterestEntitiesTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/AccruedLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="AccruedLiabilitiesCurrentAbstract" xlink:title="AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="EmployeeRelatedLiabilitiesCurrent" xlink:title="EmployeeRelatedLiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="EmployeeRelatedLiabilitiesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to EmployeeRelatedLiabilitiesCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="AccruedIncomeTaxesCurrent" xlink:title="AccruedIncomeTaxesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedIncomeTaxesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedIncomeTaxesCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to ContractWithCustomerLiabilityCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:label="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="AccrualForTaxesOtherThanIncomeTaxesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccrualForTaxesOtherThanIncomeTaxesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccrualForTaxesOtherThanIncomeTaxesCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedPropertyPlantAndEquipmentCurrent" xlink:label="AccruedPropertyPlantAndEquipmentCurrent" xlink:title="AccruedPropertyPlantAndEquipmentCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedPropertyPlantAndEquipmentCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedPropertyPlantAndEquipmentCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedOperatingLeasesCurrent" xlink:label="AccruedOperatingLeasesCurrent" xlink:title="AccruedOperatingLeasesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedOperatingLeasesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedOperatingLeasesCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedUtilitiesCurrent" xlink:label="AccruedUtilitiesCurrent" xlink:title="AccruedUtilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedUtilitiesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedUtilitiesCurrent" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccruedServicesContractedCurrent" xlink:label="AccruedServicesContractedCurrent" xlink:title="AccruedServicesContractedCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedServicesContractedCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedServicesContractedCurrent" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="OtherAccruedLiabilitiesCurrent" xlink:title="OtherAccruedLiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="OtherAccruedLiabilitiesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to OtherAccruedLiabilitiesCurrent" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedLiabilitiesCurrentAbstract" xlink:to="AccruedLiabilitiesCurrent" xlink:title="presentation: AccruedLiabilitiesCurrentAbstract to AccruedLiabilitiesCurrent" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseMember" xlink:label="FinanceLeaseMember" xlink:title="FinanceLeaseMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="FinanceLeaseMember" xlink:title="presentation: DebtInstrumentNameDomain to FinanceLeaseMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LongTermDebtMaturingInYearOneAbstract" xlink:label="LongTermDebtMaturingInYearOneAbstract" xlink:title="LongTermDebtMaturingInYearOneAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtMaturingInYearOneAbstract" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:title="presentation: LongTermDebtMaturingInYearOneAbstract to LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtMaturingInYearOneAbstract" xlink:title="presentation: DebtInstrumentLineItems to LongTermDebtMaturingInYearOneAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="LongTermDebtByMaturityAbstract" xlink:title="LongTermDebtByMaturityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:title="presentation: LongTermDebtByMaturityAbstract to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:title="presentation: LongTermDebtByMaturityAbstract to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:title="presentation: LongTermDebtByMaturityAbstract to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:title="presentation: LongTermDebtByMaturityAbstract to LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:label="LongTermDebtAndCapitalLeaseObligations" xlink:title="LongTermDebtAndCapitalLeaseObligations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="LongTermDebtAndCapitalLeaseObligations" xlink:title="presentation: LongTermDebtByMaturityAbstract to LongTermDebtAndCapitalLeaseObligations" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LongTermDebtByMaturityAbstract" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="presentation: LongTermDebtByMaturityAbstract to DebtLongtermAndShorttermCombinedAmount" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="LongTermDebtByMaturityAbstract" xlink:title="presentation: DebtInstrumentLineItems to LongTermDebtByMaturityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPaymentTerms" xlink:label="DebtInstrumentPaymentTerms" xlink:title="DebtInstrumentPaymentTerms" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentPaymentTerms" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentPaymentTerms" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFrequencyOfPeriodicPayment" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentFrequencyOfPeriodicPayment" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCollateralAmount" xlink:label="DebtInstrumentCollateralAmount" xlink:title="DebtInstrumentCollateralAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentCollateralAmount" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentCollateralAmount" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtFinanceLeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseMember" xlink:label="FinanceLeaseMember" xlink:title="FinanceLeaseMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Seven2MillionFinanceLeaseMember" xlink:label="Seven2MillionFinanceLeaseMember" xlink:title="Seven2MillionFinanceLeaseMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseMember" xlink:to="Seven2MillionFinanceLeaseMember" xlink:title="presentation: FinanceLeaseMember to Seven2MillionFinanceLeaseMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_Three55MillionFinanceLeaseMember" xlink:label="Three55MillionFinanceLeaseMember" xlink:title="Three55MillionFinanceLeaseMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseMember" xlink:to="Three55MillionFinanceLeaseMember" xlink:title="presentation: FinanceLeaseMember to Three55MillionFinanceLeaseMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="FinanceLeaseMember" xlink:title="presentation: DebtInstrumentNameDomain to FinanceLeaseMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="RangeAxis" xlink:title="presentation: DebtInstrumentTable to RangeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="LeaseContractualTermAxis" xlink:title="LeaseContractualTermAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="LeaseContractualTermDomain" xlink:title="LeaseContractualTermDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MonthlyMember" xlink:label="MonthlyMember" xlink:title="MonthlyMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseContractualTermDomain" xlink:to="MonthlyMember" xlink:title="presentation: LeaseContractualTermDomain to MonthlyMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FirstThreeMonthsMember" xlink:label="FirstThreeMonthsMember" xlink:title="FirstThreeMonthsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseContractualTermDomain" xlink:to="FirstThreeMonthsMember" xlink:title="presentation: LeaseContractualTermDomain to FirstThreeMonthsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowingNineMonthsMember" xlink:label="FollowingNineMonthsMember" xlink:title="FollowingNineMonthsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseContractualTermDomain" xlink:to="FollowingNineMonthsMember" xlink:title="presentation: LeaseContractualTermDomain to FollowingNineMonthsMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FollowedByThirtySixMonthsMember" xlink:label="FollowedByThirtySixMonthsMember" xlink:title="FollowedByThirtySixMonthsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseContractualTermDomain" xlink:to="FollowedByThirtySixMonthsMember" xlink:title="presentation: LeaseContractualTermDomain to FollowedByThirtySixMonthsMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseContractualTermAxis" xlink:to="LeaseContractualTermDomain" xlink:title="presentation: LeaseContractualTermAxis to LeaseContractualTermDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="LeaseContractualTermAxis" xlink:title="presentation: DebtInstrumentTable to LeaseContractualTermAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeFinanceLeaseTermOfContract1" xlink:label="LesseeFinanceLeaseTermOfContract1" xlink:title="LesseeFinanceLeaseTermOfContract1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LesseeFinanceLeaseTermOfContract1" xlink:title="presentation: DebtInstrumentsAbstract to LesseeFinanceLeaseTermOfContract1" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="FinanceLeaseLiability" xlink:title="presentation: DebtInstrumentsAbstract to FinanceLeaseLiability" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="DebtInstrumentPeriodicPayment" xlink:title="DebtInstrumentPeriodicPayment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentPeriodicPayment" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentPeriodicPayment" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OutstandingCommittedBalanceForCrossDefaultProvision" xlink:label="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="OutstandingCommittedBalanceForCrossDefaultProvision" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="OutstandingCommittedBalanceForCrossDefaultProvision" xlink:title="presentation: DebtInstrumentsAbstract to OutstandingCommittedBalanceForCrossDefaultProvision" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtXiamenProjectLoansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoanMember" xlink:label="ProjectLoanMember" xlink:title="ProjectLoanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="ProjectLoanMember" xlink:title="presentation: DebtInstrumentNameDomain to ProjectLoanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProjectLoansAbstract" xlink:label="ProjectLoansAbstract" xlink:title="ProjectLoansAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProjectLoansAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: ProjectLoansAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="RepaymentsOfLongTermDebt" xlink:title="RepaymentsOfLongTermDebt" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProjectLoansAbstract" xlink:to="RepaymentsOfLongTermDebt" xlink:title="presentation: ProjectLoansAbstract to RepaymentsOfLongTermDebt" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProjectLoansAbstract" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="presentation: ProjectLoansAbstract to DebtLongtermAndShorttermCombinedAmount" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="ProjectLoansAbstract" xlink:title="presentation: DebtInstrumentLineItems to ProjectLoansAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_WorkingCapitalLoanMember" xlink:label="WorkingCapitalLoanMember" xlink:title="WorkingCapitalLoanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="WorkingCapitalLoanMember" xlink:title="presentation: DebtInstrumentNameDomain to WorkingCapitalLoanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="LineOfCreditFacilityExpirationDate1" xlink:title="LineOfCreditFacilityExpirationDate1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityExpirationDate1" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityExpirationDate1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="RepaymentsOfLongTermDebt" xlink:title="RepaymentsOfLongTermDebt" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="RepaymentsOfLongTermDebt" xlink:title="presentation: DebtInstrumentsAbstract to RepaymentsOfLongTermDebt" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="presentation: DebtInstrumentsAbstract to DebtLongtermAndShorttermCombinedAmount" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtCorporateCreditAgreementDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AmendedAndRestatedCreditAgreementMember" xlink:label="AmendedAndRestatedCreditAgreementMember" xlink:title="AmendedAndRestatedCreditAgreementMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="AmendedAndRestatedCreditAgreementMember" xlink:title="presentation: DebtInstrumentNameDomain to AmendedAndRestatedCreditAgreementMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentTerm" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentTerm" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity" xlink:label="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="LineOfCreditFacilityCurrentBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityCurrentBorrowingCapacity" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityCurrentBorrowingCapacity" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:label="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" xlink:title="presentation: DebtInstrumentsAbstract to AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:label="DebtLongtermAndShorttermCombinedAmount" xlink:title="DebtLongtermAndShorttermCombinedAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtLongtermAndShorttermCombinedAmount" xlink:title="presentation: DebtInstrumentsAbstract to DebtLongtermAndShorttermCombinedAmount" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/DebtInterestPaidForDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidAbstract" xlink:label="InterestPaidAbstract" xlink:title="InterestPaidAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaid" xlink:label="InterestPaid" xlink:title="InterestPaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InterestPaidAbstract" xlink:to="InterestPaid" xlink:title="presentation: InterestPaidAbstract to InterestPaid" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime" xlink:label="ShortTermDebtWeightedAverageInterestRateOverTime" xlink:title="ShortTermDebtWeightedAverageInterestRateOverTime" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InterestPaidAbstract" xlink:to="ShortTermDebtWeightedAverageInterestRateOverTime" xlink:title="presentation: InterestPaidAbstract to ShortTermDebtWeightedAverageInterestRateOverTime" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="InterestPaidAbstract" xlink:title="presentation: DebtDisclosureAbstract to InterestPaidAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/OtherLiabilitiesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesDisclosureAbstract" xlink:label="OtherLiabilitiesDisclosureAbstract" xlink:title="OtherLiabilitiesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitNoncurrent" xlink:label="UnrecognizedTaxBenefitNoncurrent" xlink:title="UnrecognizedTaxBenefitNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="UnrecognizedTaxBenefitNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to UnrecognizedTaxBenefitNoncurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PostemploymentBenefitsLiabilityNoncurrent" xlink:label="PostemploymentBenefitsLiabilityNoncurrent" xlink:title="PostemploymentBenefitsLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="PostemploymentBenefitsLiabilityNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to PostemploymentBenefitsLiabilityNoncurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to ContractWithCustomerLiabilityNoncurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="AccruedIncomeTaxesNoncurrent" xlink:title="AccruedIncomeTaxesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="AccruedIncomeTaxesNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to AccruedIncomeTaxesNoncurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to OperatingLeaseLiabilityNoncurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSundryLiabilitiesNoncurrent" xlink:label="OtherSundryLiabilitiesNoncurrent" xlink:title="OtherSundryLiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="OtherSundryLiabilitiesNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to OtherSundryLiabilitiesNoncurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OtherLiabilitiesDisclosureAbstract" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="presentation: OtherLiabilitiesDisclosureAbstract to OtherLiabilitiesNoncurrent" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueDisaggregationOfRevenueDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:label="TimingOfTransferOfGoodOrServiceAxis" xlink:title="TimingOfTransferOfGoodOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:label="TimingOfTransferOfGoodOrServiceDomain" xlink:title="TimingOfTransferOfGoodOrServiceDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredOverTimeMember" xlink:label="TransferredOverTimeMember" xlink:title="TransferredOverTimeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TimingOfTransferOfGoodOrServiceDomain" xlink:to="TransferredOverTimeMember" xlink:title="presentation: TimingOfTransferOfGoodOrServiceDomain to TransferredOverTimeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransferredAtPointInTimeMember" xlink:label="TransferredAtPointInTimeMember" xlink:title="TransferredAtPointInTimeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TimingOfTransferOfGoodOrServiceDomain" xlink:to="TransferredAtPointInTimeMember" xlink:title="presentation: TimingOfTransferOfGoodOrServiceDomain to TransferredAtPointInTimeMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TimingOfTransferOfGoodOrServiceAxis" xlink:to="TimingOfTransferOfGoodOrServiceDomain" xlink:title="presentation: TimingOfTransferOfGoodOrServiceAxis to TimingOfTransferOfGoodOrServiceDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="TimingOfTransferOfGoodOrServiceAxis" xlink:title="presentation: DisaggregationOfRevenueTable to TimingOfTransferOfGoodOrServiceAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="presentation: SegmentGeographicalDomain to TW" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="presentation: SegmentGeographicalDomain to CN" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="presentation: SegmentGeographicalDomain to KR" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_EuropeMember" xlink:label="EuropeMember" xlink:title="EuropeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeMember" xlink:title="presentation: SegmentGeographicalDomain to EuropeMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_OtherMember" xlink:label="OtherMember" xlink:title="OtherMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="OtherMember" xlink:title="presentation: SegmentGeographicalDomain to OtherMember" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_IntegratedCircuitsMember" xlink:label="IntegratedCircuitsMember" xlink:title="IntegratedCircuitsMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndIntegratedCircuitsMember" xlink:label="HighEndIntegratedCircuitsMember" xlink:title="HighEndIntegratedCircuitsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IntegratedCircuitsMember" xlink:to="HighEndIntegratedCircuitsMember" xlink:title="presentation: IntegratedCircuitsMember to HighEndIntegratedCircuitsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamIntegratedCircuitsMember" xlink:label="MainstreamIntegratedCircuitsMember" xlink:title="MainstreamIntegratedCircuitsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IntegratedCircuitsMember" xlink:to="MainstreamIntegratedCircuitsMember" xlink:title="presentation: IntegratedCircuitsMember to MainstreamIntegratedCircuitsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="IntegratedCircuitsMember" xlink:title="presentation: ProductsAndServicesDomain to IntegratedCircuitsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FlatPanelDisplaysMember" xlink:label="FlatPanelDisplaysMember" xlink:title="FlatPanelDisplaysMember" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_HighEndFlatPanelDisplaysMember" xlink:label="HighEndFlatPanelDisplaysMember" xlink:title="HighEndFlatPanelDisplaysMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FlatPanelDisplaysMember" xlink:to="HighEndFlatPanelDisplaysMember" xlink:title="presentation: FlatPanelDisplaysMember to HighEndFlatPanelDisplaysMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MainstreamFlatPanelDisplaysMember" xlink:label="MainstreamFlatPanelDisplaysMember" xlink:title="MainstreamFlatPanelDisplaysMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FlatPanelDisplaysMember" xlink:to="MainstreamFlatPanelDisplaysMember" xlink:title="presentation: FlatPanelDisplaysMember to MainstreamFlatPanelDisplaysMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="FlatPanelDisplaysMember" xlink:title="presentation: ProductsAndServicesDomain to FlatPanelDisplaysMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="presentation: ProductOrServiceAxis to ProductsAndServicesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="presentation: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: DisaggregationOfRevenueAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="DisaggregationOfRevenueLineItems" xlink:title="presentation: DisaggregationOfRevenueTable to DisaggregationOfRevenueLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DisaggregationOfRevenueTable" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DisaggregationOfRevenueTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="presentation: DisaggregationOfRevenueTable to RangeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="OtherCurrentAssetsMember" xlink:title="OtherCurrentAssetsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BalanceSheetLocationDomain" xlink:to="OtherCurrentAssetsMember" xlink:title="presentation: BalanceSheetLocationDomain to OtherCurrentAssetsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="AccruedLiabilitiesMember" xlink:title="AccruedLiabilitiesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BalanceSheetLocationDomain" xlink:to="AccruedLiabilitiesMember" xlink:title="presentation: BalanceSheetLocationDomain to AccruedLiabilitiesMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesMember" xlink:label="OtherLiabilitiesMember" xlink:title="OtherLiabilitiesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BalanceSheetLocationDomain" xlink:to="OtherLiabilitiesMember" xlink:title="presentation: BalanceSheetLocationDomain to OtherLiabilitiesMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain" xlink:title="presentation: BalanceSheetLocationAxis to BalanceSheetLocationDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="BalanceSheetLocationAxis" xlink:title="presentation: DisaggregationOfRevenueTable to BalanceSheetLocationAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="ContractWithCustomerAssetAndLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNet" xlink:label="ContractWithCustomerAssetNet" xlink:title="ContractWithCustomerAssetNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="ContractWithCustomerAssetNet" xlink:title="presentation: ContractWithCustomerAssetAndLiabilityAbstract to ContractWithCustomerAssetNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="ContractWithCustomerLiability" xlink:title="presentation: ContractWithCustomerAssetAndLiabilityAbstract to ContractWithCustomerLiability" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerAssetAndLiabilityAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to ContractWithCustomerAssetAndLiabilityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInContractWithCustomerLiabilityAbstract" xlink:label="ChangeInContractWithCustomerLiabilityAbstract" xlink:title="ChangeInContractWithCustomerLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ChangeInContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="presentation: ChangeInContractWithCustomerLiabilityAbstract to ContractWithCustomerLiabilityRevenueRecognized" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ChangeInContractWithCustomerLiabilityAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to ChangeInContractWithCustomerLiabilityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ProductInvoiceTerm" xlink:label="ProductInvoiceTerm" xlink:title="ProductInvoiceTerm" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="ProductInvoiceTerm" xlink:title="presentation: RevenuePerformanceObligationAbstract to ProductInvoiceTerm" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenuePerformanceObligationAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to RevenuePerformanceObligationAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="DisaggregationOfRevenueLineItems" xlink:title="presentation: DisaggregationOfRevenueTable to DisaggregationOfRevenueLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DisaggregationOfRevenueTable" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DisaggregationOfRevenueTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="AssetsAndLiabilitiesLesseeAbstract" xlink:title="AssetsAndLiabilitiesLesseeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="OperatingLeaseRightOfUseAsset" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to OperatingLeaseRightOfUseAsset" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="FinanceLeaseRightOfUseAsset" xlink:title="FinanceLeaseRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="FinanceLeaseRightOfUseAsset" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to FinanceLeaseRightOfUseAsset" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityAbstract" xlink:label="OperatingLeaseLiabilityAbstract" xlink:title="OperatingLeaseLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="presentation: OperatingLeaseLiabilityAbstract to OperatingLeaseLiabilityCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="presentation: OperatingLeaseLiabilityAbstract to OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="presentation: OperatingLeaseLiabilityAbstract to OperatingLeaseLiabilityNoncurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="presentation: OperatingLeaseLiabilityAbstract to OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilityAbstract" xlink:to="OperatingLeaseLiability" xlink:title="presentation: OperatingLeaseLiabilityAbstract to OperatingLeaseLiability" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="OperatingLeaseLiabilityAbstract" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to OperatingLeaseLiabilityAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityAbstract" xlink:label="FinanceLeaseLiabilityAbstract" xlink:title="FinanceLeaseLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="FinanceLeaseLiabilityCurrent" xlink:title="FinanceLeaseLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="FinanceLeaseLiabilityCurrent" xlink:title="presentation: FinanceLeaseLiabilityAbstract to FinanceLeaseLiabilityCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:title="presentation: FinanceLeaseLiabilityAbstract to FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="FinanceLeaseLiabilityNoncurrent" xlink:title="FinanceLeaseLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="FinanceLeaseLiabilityNoncurrent" xlink:title="presentation: FinanceLeaseLiabilityAbstract to FinanceLeaseLiabilityNoncurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:title="presentation: FinanceLeaseLiabilityAbstract to FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilityAbstract" xlink:to="FinanceLeaseLiability" xlink:title="presentation: FinanceLeaseLiabilityAbstract to FinanceLeaseLiability" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAndLiabilitiesLesseeAbstract" xlink:to="FinanceLeaseLiabilityAbstract" xlink:title="presentation: AssetsAndLiabilitiesLesseeAbstract to FinanceLeaseLiabilityAbstract" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="AssetsAndLiabilitiesLesseeAbstract" xlink:title="presentation: LeasesAbstract to AssetsAndLiabilitiesLesseeAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDue" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="OperatingLeaseLiability" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to OperatingLeaseLiability" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="presentation: LeasesAbstract to OperatingLeaseLiabilitiesPaymentsDueAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:label="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:title="FinanceLeaseLiabilitiesPaymentsDueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="FinanceLeaseLiabilityPaymentsDueYearTwo" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDueYearTwo" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="FinanceLeaseLiabilityPaymentsDueYearThree" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDueYearThree" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDueYearThree" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDueYearFour" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDueYearFour" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="FinanceLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDueAfterYearFour" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="FinanceLeaseLiabilityPaymentsDue" xlink:title="FinanceLeaseLiabilityPaymentsDue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityPaymentsDue" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityPaymentsDue" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="FinanceLeaseLiabilityUndiscountedExcessAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiabilityUndiscountedExcessAmount" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="FinanceLeaseLiability" xlink:title="FinanceLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="FinanceLeaseLiability" xlink:title="presentation: FinanceLeaseLiabilitiesPaymentsDueAbstract to FinanceLeaseLiability" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:title="presentation: LeasesAbstract to FinanceLeaseLiabilitiesPaymentsDueAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetailsCalc01" />
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesLeaseCostDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseCostAbstract" xlink:label="LeaseCostAbstract" xlink:title="LeaseCostAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseCost" xlink:label="OperatingLeaseCost" xlink:title="OperatingLeaseCost" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseCostAbstract" xlink:to="OperatingLeaseCost" xlink:title="presentation: LeaseCostAbstract to OperatingLeaseCost" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShortTermLeaseCost" xlink:label="ShortTermLeaseCost" xlink:title="ShortTermLeaseCost" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseCostAbstract" xlink:to="ShortTermLeaseCost" xlink:title="presentation: LeaseCostAbstract to ShortTermLeaseCost" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableLeaseCost" xlink:label="VariableLeaseCost" xlink:title="VariableLeaseCost" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseCostAbstract" xlink:to="VariableLeaseCost" xlink:title="presentation: LeaseCostAbstract to VariableLeaseCost" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="FinanceLeaseInterestExpense" xlink:title="FinanceLeaseInterestExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseCostAbstract" xlink:to="FinanceLeaseInterestExpense" xlink:title="presentation: LeaseCostAbstract to FinanceLeaseInterestExpense" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="FinanceLeaseRightOfUseAssetAmortization" xlink:title="FinanceLeaseRightOfUseAssetAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeaseCostAbstract" xlink:to="FinanceLeaseRightOfUseAssetAmortization" xlink:title="presentation: LeaseCostAbstract to FinanceLeaseRightOfUseAssetAmortization" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LeaseCostAbstract" xlink:title="presentation: LeasesAbstract to LeaseCostAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:label="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:title="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="presentation: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to OperatingLeaseWeightedAverageRemainingLeaseTerm1" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="presentation: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to OperatingLeaseWeightedAverageDiscountRatePercent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="FinanceLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="presentation: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to FinanceLeaseWeightedAverageRemainingLeaseTerm1" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="FinanceLeaseWeightedAverageDiscountRatePercent" xlink:title="FinanceLeaseWeightedAverageDiscountRatePercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:to="FinanceLeaseWeightedAverageDiscountRatePercent" xlink:title="presentation: AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract to FinanceLeaseWeightedAverageDiscountRatePercent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" xlink:title="presentation: LeasesAbstract to AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CashAndNonCashInformationRelatedToLeasesAbstract" xlink:label="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:title="CashAndNonCashInformationRelatedToLeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="OperatingLeasePayments" xlink:title="OperatingLeasePayments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="OperatingLeasePayments" xlink:title="presentation: CashAndNonCashInformationRelatedToLeasesAbstract to OperatingLeasePayments" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:label="FinanceLeaseInterestPaymentOnLiability" xlink:title="FinanceLeaseInterestPaymentOnLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="FinanceLeaseInterestPaymentOnLiability" xlink:title="presentation: CashAndNonCashInformationRelatedToLeasesAbstract to FinanceLeaseInterestPaymentOnLiability" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="FinanceLeasePrincipalPayments" xlink:title="FinanceLeasePrincipalPayments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="FinanceLeasePrincipalPayments" xlink:title="presentation: CashAndNonCashInformationRelatedToLeasesAbstract to FinanceLeasePrincipalPayments" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:title="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:to="RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:title="presentation: CashAndNonCashInformationRelatedToLeasesAbstract to RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="CashAndNonCashInformationRelatedToLeasesAbstract" xlink:title="presentation: LeasesAbstract to CashAndNonCashInformationRelatedToLeasesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/SharebasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="EmployeeStockOptionMember" xlink:title="EmployeeStockOptionMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockOptionMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockOptionMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="EmployeeStockMember" xlink:title="EmployeeStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="EmployeeStockMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to EmployeeStockMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="IncomeStatementLocationAxis" xlink:title="IncomeStatementLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="IncomeStatementLocationDomain" xlink:title="IncomeStatementLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="CostOfSalesMember" xlink:title="CostOfSalesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementLocationDomain" xlink:to="CostOfSalesMember" xlink:title="presentation: IncomeStatementLocationDomain to CostOfSalesMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="SellingGeneralAndAdministrativeExpensesMember" xlink:title="SellingGeneralAndAdministrativeExpensesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementLocationDomain" xlink:to="SellingGeneralAndAdministrativeExpensesMember" xlink:title="presentation: IncomeStatementLocationDomain to SellingGeneralAndAdministrativeExpensesMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="ResearchAndDevelopmentExpenseMember" xlink:title="ResearchAndDevelopmentExpenseMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementLocationDomain" xlink:to="ResearchAndDevelopmentExpenseMember" xlink:title="presentation: IncomeStatementLocationDomain to ResearchAndDevelopmentExpenseMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementLocationAxis" xlink:to="IncomeStatementLocationDomain" xlink:title="presentation: IncomeStatementLocationAxis to IncomeStatementLocationDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="IncomeStatementLocationAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to IncomeStatementLocationAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ExecutiveOfficerMember" xlink:label="ExecutiveOfficerMember" xlink:title="ExecutiveOfficerMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ExecutiveOfficerMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to ExecutiveOfficerMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="presentation: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="TitleOfIndividualAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to TitleOfIndividualAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to RangeAxis" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:label="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfExecutivesDeparted" xlink:label="NumberOfExecutivesDeparted" xlink:title="NumberOfExecutivesDeparted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="NumberOfExecutivesDeparted" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to NumberOfExecutivesDeparted" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="AllocatedShareBasedCompensationExpense" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to AllocatedShareBasedCompensationExpense" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:label="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:title="presentation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:title="presentation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:title="presentation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockOptionsActivityAbstract" xlink:label="StockOptionsActivityAbstract" xlink:title="StockOptionsActivityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockOptionsActivityAbstract" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:title="presentation: StockOptionsActivityAbstract to SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to StockIssuedDuringPeriodSharesStockOptionsExercised" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockOptionsActivityAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:title="presentation: StockOptionsActivityAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockOptionsActivityAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:title="presentation: StockOptionsActivityAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockOptionsActivityAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" xlink:title="presentation: StockOptionsActivityAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract to SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockOptionsActivityAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:title="presentation: StockOptionsActivityAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="StockOptionsActivityAbstract" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to StockOptionsActivityAbstract" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="ProceedsFromStockOptionsExercised" xlink:title="ProceedsFromStockOptionsExercised" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="ProceedsFromStockOptionsExercised" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract to ProceedsFromStockOptionsExercised" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="presentation: ShareBasedArrangementsToObtainGoodsAndServicesAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedArrangementsToObtainGoodsAndServicesAbstract" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedArrangementsToObtainGoodsAndServicesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/EmployeeRetirementPlansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="CompensationAndRetirementDisclosureAbstract" xlink:title="CompensationAndRetirementDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_NumberOfMonthsOfServiceCompleted" xlink:label="NumberOfMonthsOfServiceCompleted" xlink:title="NumberOfMonthsOfServiceCompleted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="NumberOfMonthsOfServiceCompleted" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to NumberOfMonthsOfServiceCompleted" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:label="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:title="MinimumAgeOfEmployeesToComeUnderRetirementPlan" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="MinimumAgeOfEmployeesToComeUnderRetirementPlan" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to MinimumAgeOfEmployeesToComeUnderRetirementPlan" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:title="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:title="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="DefinedContributionPlanEmployerMatchingContributionPercent" xlink:title="DefinedContributionPlanEmployerMatchingContributionPercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="DefinedContributionPlanEmployerMatchingContributionPercent" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to DefinedContributionPlanEmployerMatchingContributionPercent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="DefinedContributionPlanCostRecognized" xlink:title="DefinedContributionPlanCostRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CompensationAndRetirementDisclosureAbstract" xlink:to="DefinedContributionPlanCostRecognized" xlink:title="presentation: CompensationAndRetirementDisclosureAbstract to DefinedContributionPlanCostRecognized" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:label="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:title="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:title="presentation: ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:title="presentation: ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="presentation: ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" xlink:title="presentation: IncomeTaxDisclosureAbstract to ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="IncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="CurrentFederalTaxExpenseBenefit" xlink:title="CurrentFederalTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="CurrentFederalTaxExpenseBenefit" xlink:title="presentation: CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract to CurrentFederalTaxExpenseBenefit" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="CurrentStateAndLocalTaxExpenseBenefit" xlink:title="CurrentStateAndLocalTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="CurrentStateAndLocalTaxExpenseBenefit" xlink:title="presentation: CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract to CurrentStateAndLocalTaxExpenseBenefit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="CurrentForeignTaxExpenseBenefit" xlink:title="CurrentForeignTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="CurrentForeignTaxExpenseBenefit" xlink:title="presentation: CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract to CurrentForeignTaxExpenseBenefit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="CurrentIncomeTaxExpenseBenefit" xlink:title="CurrentIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="CurrentIncomeTaxExpenseBenefit" xlink:title="presentation: CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract to CurrentIncomeTaxExpenseBenefit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsAbstract to CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="DeferredFederalIncomeTaxExpenseBenefit" xlink:title="DeferredFederalIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="DeferredFederalIncomeTaxExpenseBenefit" xlink:title="presentation: DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract to DeferredFederalIncomeTaxExpenseBenefit" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="DeferredStateAndLocalIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:title="presentation: DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract to DeferredStateAndLocalIncomeTaxExpenseBenefit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="DeferredForeignIncomeTaxExpenseBenefit" xlink:title="DeferredForeignIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="DeferredForeignIncomeTaxExpenseBenefit" xlink:title="presentation: DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract to DeferredForeignIncomeTaxExpenseBenefit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="presentation: DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract to DeferredIncomeTaxExpenseBenefit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsAbstract to DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsAbstract to IncomeTaxExpenseBenefit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxExpenseBenefitContinuingOperationsAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:label="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:title="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationForeignIncomeTaxRateDifferential" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="IncomeTaxReconciliationTaxCredits" xlink:title="IncomeTaxReconciliationTaxCredits" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationTaxCredits" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationTaxCredits" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:label="IncomeTaxReconciliationTaxContingencies" xlink:title="IncomeTaxReconciliationTaxContingencies" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationTaxContingencies" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationTaxContingencies" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="IncomeTaxReconciliationOtherAdjustments" xlink:title="IncomeTaxReconciliationOtherAdjustments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxReconciliationOtherAdjustments" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxReconciliationOtherAdjustments" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract to IncomeTaxExpenseBenefit" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:title="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:title="presentation: IncomeTaxDisclosureAbstract to EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="EffectiveIncomeTaxRateContinuingOperations" xlink:title="presentation: IncomeTaxDisclosureAbstract to EffectiveIncomeTaxRateContinuingOperations" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNetAbstract" xlink:label="DeferredTaxAssetsNetAbstract" xlink:title="DeferredTaxAssetsNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:label="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:title="DeferredTaxAssetsNetOfValuationAllowanceAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:label="DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="DeferredTaxAssetsOperatingLossCarryforwards" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsOperatingLossCarryforwards" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsOperatingLossCarryforwards" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:label="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:label="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="DeferredTaxAssetsTaxCreditCarryforwardsOther" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsTaxCreditCarryforwardsOther" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsTaxCreditCarryforwardsOther" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="DeferredTaxAssetsPropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsPropertyPlantAndEquipment" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsPropertyPlantAndEquipment" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxAssetsLeaseLiability" xlink:label="DeferredTaxAssetsLeaseLiability" xlink:title="DeferredTaxAssetsLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsLeaseLiability" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsLeaseLiability" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="DeferredTaxAssetsInProcessResearchAndDevelopment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsInProcessResearchAndDevelopment" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="DeferredTaxAssetsGross" xlink:title="DeferredTaxAssetsGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsGross" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsGross" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="DeferredTaxAssetsValuationAllowance" xlink:title="DeferredTaxAssetsValuationAllowance" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsValuationAllowance" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsValuationAllowance" order="8.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="DeferredTaxAssetsNet" xlink:title="DeferredTaxAssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:to="DeferredTaxAssetsNet" xlink:title="presentation: DeferredTaxAssetsNetOfValuationAllowanceAbstract to DeferredTaxAssetsNet" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetAbstract" xlink:to="DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:title="presentation: DeferredTaxAssetsNetAbstract to DeferredTaxAssetsNetOfValuationAllowanceAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="DeferredTaxLiabilitiesAbstract" xlink:title="DeferredTaxLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="DeferredTaxLiabilitiesRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilitiesAbstract" xlink:to="DeferredTaxLiabilitiesRightOfUseAsset" xlink:title="presentation: DeferredTaxLiabilitiesAbstract to DeferredTaxLiabilitiesRightOfUseAsset" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="DeferredTaxLiabilitiesOther" xlink:title="DeferredTaxLiabilitiesOther" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilitiesAbstract" xlink:to="DeferredTaxLiabilitiesOther" xlink:title="presentation: DeferredTaxLiabilitiesAbstract to DeferredTaxLiabilitiesOther" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="DeferredIncomeTaxLiabilities" xlink:title="DeferredIncomeTaxLiabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilitiesAbstract" xlink:to="DeferredIncomeTaxLiabilities" xlink:title="presentation: DeferredTaxLiabilitiesAbstract to DeferredIncomeTaxLiabilities" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetAbstract" xlink:to="DeferredTaxLiabilitiesAbstract" xlink:title="presentation: DeferredTaxAssetsNetAbstract to DeferredTaxLiabilitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="DeferredTaxAssetsLiabilitiesNet" xlink:title="DeferredTaxAssetsLiabilitiesNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetAbstract" xlink:to="DeferredTaxAssetsLiabilitiesNet" xlink:title="presentation: DeferredTaxAssetsNetAbstract to DeferredTaxAssetsLiabilitiesNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:label="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:title="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="presentation: ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract to DeferredIncomeTaxAssetsNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="DeferredIncomeTaxLiabilitiesNet" xlink:title="DeferredIncomeTaxLiabilitiesNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredIncomeTaxLiabilitiesNet" xlink:title="presentation: ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract to DeferredIncomeTaxLiabilitiesNet" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredTaxAssetsLiabilitiesNet" xlink:title="presentation: ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract to DeferredTaxAssetsLiabilitiesNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsNetAbstract" xlink:to="ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:title="presentation: DeferredTaxAssetsNetAbstract to ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="DeferredTaxAssetsNetAbstract" xlink:title="presentation: IncomeTaxDisclosureAbstract to DeferredTaxAssetsNetAbstract" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesDetailsCalc01" />
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsTable" xlink:label="OperatingLossCarryforwardsTable" xlink:title="OperatingLossCarryforwardsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="IncomeTaxAuthorityAxis" xlink:title="IncomeTaxAuthorityAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="IncomeTaxAuthorityDomain" xlink:title="IncomeTaxAuthorityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DomesticCountryMember" xlink:label="DomesticCountryMember" xlink:title="DomesticCountryMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxAuthorityDomain" xlink:to="DomesticCountryMember" xlink:title="presentation: IncomeTaxAuthorityDomain to DomesticCountryMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="StateAndLocalJurisdictionMember" xlink:title="StateAndLocalJurisdictionMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxAuthorityDomain" xlink:to="StateAndLocalJurisdictionMember" xlink:title="presentation: IncomeTaxAuthorityDomain to StateAndLocalJurisdictionMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCountryMember" xlink:label="ForeignCountryMember" xlink:title="ForeignCountryMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxAuthorityDomain" xlink:to="ForeignCountryMember" xlink:title="presentation: IncomeTaxAuthorityDomain to ForeignCountryMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxAuthorityAxis" xlink:to="IncomeTaxAuthorityDomain" xlink:title="presentation: IncomeTaxAuthorityAxis to IncomeTaxAuthorityDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsTable" xlink:to="IncomeTaxAuthorityAxis" xlink:title="presentation: OperatingLossCarryforwardsTable to IncomeTaxAuthorityAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="TaxCreditCarryforwardAxis" xlink:title="TaxCreditCarryforwardAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="TaxCreditCarryforwardNameDomain" xlink:title="TaxCreditCarryforwardNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchMember" xlink:label="ResearchMember" xlink:title="ResearchMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="ResearchMember" xlink:title="presentation: TaxCreditCarryforwardNameDomain to ResearchMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentCreditMember" xlink:label="InvestmentCreditMember" xlink:title="InvestmentCreditMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="InvestmentCreditMember" xlink:title="presentation: TaxCreditCarryforwardNameDomain to InvestmentCreditMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardNameDomain" xlink:to="StateAndLocalJurisdictionMember" xlink:title="presentation: TaxCreditCarryforwardNameDomain to StateAndLocalJurisdictionMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardAxis" xlink:to="TaxCreditCarryforwardNameDomain" xlink:title="presentation: TaxCreditCarryforwardAxis to TaxCreditCarryforwardNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsTable" xlink:to="TaxCreditCarryforwardAxis" xlink:title="presentation: OperatingLossCarryforwardsTable to TaxCreditCarryforwardAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsTable" xlink:to="RangeAxis" xlink:title="presentation: OperatingLossCarryforwardsTable to RangeAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="OperatingLossCarryforwardsLineItems" xlink:title="OperatingLossCarryforwardsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:label="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="OperatingLossCarryforwards" xlink:title="OperatingLossCarryforwards" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:to="OperatingLossCarryforwards" xlink:title="presentation: DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract to OperatingLossCarryforwards" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLossCarryforwardsExpirationDate" xlink:label="OperatingLossCarryforwardsExpirationDate" xlink:title="OperatingLossCarryforwardsExpirationDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:to="OperatingLossCarryforwardsExpirationDate" xlink:title="presentation: DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract to OperatingLossCarryforwardsExpirationDate" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" xlink:title="presentation: OperatingLossCarryforwardsLineItems to DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_TaxCreditCarryforwardAbstract" xlink:label="TaxCreditCarryforwardAbstract" xlink:title="TaxCreditCarryforwardAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="TaxCreditCarryforwardAmount" xlink:title="TaxCreditCarryforwardAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardAbstract" xlink:to="TaxCreditCarryforwardAmount" xlink:title="presentation: TaxCreditCarryforwardAbstract to TaxCreditCarryforwardAmount" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxCreditCarryforwardExpirationDate" xlink:label="TaxCreditCarryforwardExpirationDate" xlink:title="TaxCreditCarryforwardExpirationDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TaxCreditCarryforwardAbstract" xlink:to="TaxCreditCarryforwardExpirationDate" xlink:title="presentation: TaxCreditCarryforwardAbstract to TaxCreditCarryforwardExpirationDate" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="TaxCreditCarryforwardAbstract" xlink:title="presentation: OperatingLossCarryforwardsLineItems to TaxCreditCarryforwardAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:label="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="UnrecognizedTaxBenefits" xlink:title="UnrecognizedTaxBenefits" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefits" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefits" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" order="5.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="UnrecognizedTaxBenefits_2" xlink:title="UnrecognizedTaxBenefits" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefits_2" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefits" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:label="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="UnrecognizedTaxBenefitsIncludingInterestAndPenalties" xlink:title="presentation: ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward to UnrecognizedTaxBenefitsIncludingInterestAndPenalties" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:title="presentation: OperatingLossCarryforwardsLineItems to ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxUncertaintiesAbstract" xlink:label="IncomeTaxUncertaintiesAbstract" xlink:title="IncomeTaxUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxUncertaintiesAbstract" xlink:to="UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:title="presentation: IncomeTaxUncertaintiesAbstract to UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxUncertaintiesAbstract" xlink:to="UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:title="presentation: IncomeTaxUncertaintiesAbstract to UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:label="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxUncertaintiesAbstract" xlink:to="DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" xlink:title="presentation: IncomeTaxUncertaintiesAbstract to DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="IncomeTaxUncertaintiesAbstract" xlink:title="presentation: OperatingLossCarryforwardsLineItems to IncomeTaxUncertaintiesAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNetAbstract" xlink:label="IncomeTaxesPaidNetAbstract" xlink:title="IncomeTaxesPaidNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="IncomeTaxesPaid" xlink:title="IncomeTaxesPaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxesPaidNetAbstract" xlink:to="IncomeTaxesPaid" xlink:title="presentation: IncomeTaxesPaidNetAbstract to IncomeTaxesPaid" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIncomeTaxRefunds" xlink:label="ProceedsFromIncomeTaxRefunds" xlink:title="ProceedsFromIncomeTaxRefunds" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxesPaidNetAbstract" xlink:to="ProceedsFromIncomeTaxRefunds" xlink:title="presentation: IncomeTaxesPaidNetAbstract to ProceedsFromIncomeTaxRefunds" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsLineItems" xlink:to="IncomeTaxesPaidNetAbstract" xlink:title="presentation: OperatingLossCarryforwardsLineItems to IncomeTaxesPaidNetAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLossCarryforwardsTable" xlink:to="OperatingLossCarryforwardsLineItems" xlink:title="presentation: OperatingLossCarryforwardsTable to OperatingLossCarryforwardsLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="OperatingLossCarryforwardsTable" xlink:title="presentation: IncomeTaxDisclosureAbstract to OperatingLossCarryforwardsTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareReconciliationAbstract" xlink:label="EarningsPerShareReconciliationAbstract" xlink:title="EarningsPerShareReconciliationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: EarningsPerShareReconciliationAbstract to NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DilutiveSecurities" xlink:label="DilutiveSecurities" xlink:title="DilutiveSecurities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="DilutiveSecurities" xlink:title="presentation: EarningsPerShareReconciliationAbstract to DilutiveSecurities" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAttributableToParentDiluted" xlink:label="NetIncomeLossAttributableToParentDiluted" xlink:title="NetIncomeLossAttributableToParentDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="NetIncomeLossAttributableToParentDiluted" xlink:title="presentation: EarningsPerShareReconciliationAbstract to NetIncomeLossAttributableToParentDiluted" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:label="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:title="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="presentation: WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:title="presentation: WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract to WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="presentation: EarningsPerShareReconciliationAbstract to WeightedAverageNumberOfSharesOutstandingAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: EarningsPerShareReconciliationAbstract to EarningsPerShareBasic" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: EarningsPerShareReconciliationAbstract to EarningsPerShareDiluted" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareReconciliationAbstract" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareReconciliationAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="StockCompensationPlanMember" xlink:title="presentation: AntidilutiveSecuritiesNameDomain to StockCompensationPlanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain" xlink:title="presentation: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="presentation: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AntidilutiveSecuritiesAbstract" xlink:label="AntidilutiveSecuritiesAbstract" xlink:title="AntidilutiveSecuritiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesAbstract" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="presentation: AntidilutiveSecuritiesAbstract to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="AntidilutiveSecuritiesAbstract" xlink:title="presentation: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to AntidilutiveSecuritiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="presentation: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/CommitmentsAndContingenciesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CommitmentAndContingenciesAbstract" xlink:label="CommitmentAndContingenciesAbstract" xlink:title="CommitmentAndContingenciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MinimumRemainingTermOfPlantAndEquipment" xlink:label="MinimumRemainingTermOfPlantAndEquipment" xlink:title="MinimumRemainingTermOfPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentAndContingenciesAbstract" xlink:to="MinimumRemainingTermOfPlantAndEquipment" xlink:title="presentation: CommitmentAndContingenciesAbstract to MinimumRemainingTermOfPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="CommitmentAndContingenciesAbstract" xlink:title="presentation: CommitmentsAndContingenciesDisclosureAbstract to CommitmentAndContingenciesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationFiscalYearMaturityAbstract" xlink:label="ContractualObligationFiscalYearMaturityAbstract" xlink:title="ContractualObligationFiscalYearMaturityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:label="ContractualObligationDueInNextTwelveMonths" xlink:title="ContractualObligationDueInNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueInNextTwelveMonths" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueInNextTwelveMonths" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInSecondYear" xlink:label="ContractualObligationDueInSecondYear" xlink:title="ContractualObligationDueInSecondYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueInSecondYear" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueInSecondYear" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInThirdYear" xlink:label="ContractualObligationDueInThirdYear" xlink:title="ContractualObligationDueInThirdYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueInThirdYear" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueInThirdYear" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFourthYear" xlink:label="ContractualObligationDueInFourthYear" xlink:title="ContractualObligationDueInFourthYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueInFourthYear" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueInFourthYear" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueInFifthYear" xlink:label="ContractualObligationDueInFifthYear" xlink:title="ContractualObligationDueInFifthYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueInFifthYear" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueInFifthYear" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligationDueAfterFifthYear" xlink:label="ContractualObligationDueAfterFifthYear" xlink:title="ContractualObligationDueAfterFifthYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligationDueAfterFifthYear" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligationDueAfterFifthYear" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractualObligation" xlink:label="ContractualObligation" xlink:title="ContractualObligation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractualObligationFiscalYearMaturityAbstract" xlink:to="ContractualObligation" xlink:title="presentation: ContractualObligationFiscalYearMaturityAbstract to ContractualObligation" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="ContractualObligationFiscalYearMaturityAbstract" xlink:title="presentation: CommitmentsAndContingenciesDisclosureAbstract to ContractualObligationFiscalYearMaturityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossTax" xlink:label="OtherComprehensiveIncomeLossTax" xlink:title="OtherComprehensiveIncomeLossTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="OtherComprehensiveIncomeLossTax" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract to OtherComprehensiveIncomeLossTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="AccumulatedOtherComprehensiveIncomeLossTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="AccumulatedTranslationAdjustmentMember" xlink:title="AccumulatedTranslationAdjustmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="AccumulatedTranslationAdjustmentMember" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeMember to AccumulatedTranslationAdjustmentMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeOtherMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="AccumulatedOtherComprehensiveIncomeOtherMember" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeMember to AccumulatedOtherComprehensiveIncomeOtherMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EquityComponentDomain" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="presentation: EquityComponentDomain to AccumulatedOtherComprehensiveIncomeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AociIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="presentation: AociIncludingPortionAttributableToNoncontrollingInterestMember to AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" xlink:title="presentation: AociIncludingPortionAttributableToNoncontrollingInterestMember to AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EquityComponentDomain" xlink:to="AociIncludingPortionAttributableToNoncontrollingInterestMember" xlink:title="presentation: EquityComponentDomain to AociIncludingPortionAttributableToNoncontrollingInterestMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AociAttributableToNoncontrollingInterestMember" xlink:label="AociAttributableToNoncontrollingInterestMember" xlink:title="AociAttributableToNoncontrollingInterestMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:label="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AociAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" xlink:title="presentation: AociAttributableToNoncontrollingInterestMember to AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:label="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AociAttributableToNoncontrollingInterestMember" xlink:to="AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" xlink:title="presentation: AociAttributableToNoncontrollingInterestMember to AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EquityComponentDomain" xlink:to="AociAttributableToNoncontrollingInterestMember" xlink:title="presentation: EquityComponentDomain to AociAttributableToNoncontrollingInterestMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="presentation: StatementEquityComponentsAxis to EquityComponentDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="StatementEquityComponentsAxis" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossTable to StatementEquityComponentsAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:title="AccumulatedOtherComprehensiveIncomeLossLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:label="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="StockholdersEquity" xlink:title="presentation: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to StockholdersEquity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:label="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:title="presentation: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:label="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:title="presentation: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity_2" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="StockholdersEquity_2" xlink:title="presentation: ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract to StockholdersEquity" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossLineItems to ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossTable to AccumulatedOtherComprehensiveIncomeLossLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract" xlink:to="AccumulatedOtherComprehensiveIncomeLossTable" xlink:title="presentation: AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract to AccumulatedOtherComprehensiveIncomeLossTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RisksAndConcentrationsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="RisksAndUncertaintiesAbstract" xlink:title="RisksAndUncertaintiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableMember" xlink:label="AccountsReceivableMember" xlink:title="AccountsReceivableMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="AccountsReceivableMember" xlink:title="presentation: ConcentrationRiskBenchmarkDomain to AccountsReceivableMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="presentation: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="presentation: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByBenchmarkAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="CustomerConcentrationRiskMember" xlink:title="CustomerConcentrationRiskMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskTypeDomain" xlink:to="CustomerConcentrationRiskMember" xlink:title="presentation: ConcentrationRiskTypeDomain to CustomerConcentrationRiskMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain" xlink:title="presentation: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskByTypeAxis" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="MajorCustomersAxis" xlink:title="MajorCustomersAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain" xlink:title="NameOfMajorCustomerDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAMember" xlink:label="CustomerAMember" xlink:title="CustomerAMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerAMember" xlink:title="presentation: NameOfMajorCustomerDomain to CustomerAMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerBMember" xlink:label="CustomerBMember" xlink:title="CustomerBMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerBMember" xlink:title="presentation: NameOfMajorCustomerDomain to CustomerBMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerCMember" xlink:label="CustomerCMember" xlink:title="CustomerCMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NameOfMajorCustomerDomain" xlink:to="CustomerCMember" xlink:title="presentation: NameOfMajorCustomerDomain to CustomerCMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain" xlink:title="presentation: MajorCustomersAxis to NameOfMajorCustomerDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="MajorCustomersAxis" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to MajorCustomersAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CN" xlink:label="CN" xlink:title="CN" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="CN" xlink:title="presentation: SegmentGeographicalDomain to CN" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_EuropeAndOtherMember" xlink:label="EuropeAndOtherMember" xlink:title="EuropeAndOtherMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="EuropeAndOtherMember" xlink:title="presentation: SegmentGeographicalDomain to EuropeAndOtherMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_KR" xlink:label="KR" xlink:title="KR" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="KR" xlink:title="presentation: SegmentGeographicalDomain to KR" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_TW" xlink:label="TW" xlink:title="TW" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="TW" xlink:title="presentation: SegmentGeographicalDomain to TW" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to StatementGeographicalAxis" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="ConcentrationRiskLineItems" xlink:title="ConcentrationRiskLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_CustomerAccountedAbstract" xlink:label="CustomerAccountedAbstract" xlink:title="CustomerAccountedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CustomerAccountedAbstract" xlink:to="ConcentrationRiskPercentage1" xlink:title="presentation: CustomerAccountedAbstract to ConcentrationRiskPercentage1" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskLineItems" xlink:to="CustomerAccountedAbstract" xlink:title="presentation: ConcentrationRiskLineItems to CustomerAccountedAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:label="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="ConcentrationRisksTypesNoConcentrationPercentageAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncurrentAssets" xlink:label="NoncurrentAssets" xlink:title="NoncurrentAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:to="NoncurrentAssets" xlink:title="presentation: ConcentrationRisksTypesNoConcentrationPercentageAbstract to NoncurrentAssets" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNet" xlink:label="AssetsNet" xlink:title="AssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:to="AssetsNet" xlink:title="presentation: ConcentrationRisksTypesNoConcentrationPercentageAbstract to AssetsNet" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskLineItems" xlink:to="ConcentrationRisksTypesNoConcentrationPercentageAbstract" xlink:title="presentation: ConcentrationRiskLineItems to ConcentrationRisksTypesNoConcentrationPercentageAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:to="ConcentrationRiskLineItems" xlink:title="presentation: ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable to ConcentrationRiskLineItems" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RisksAndUncertaintiesAbstract" xlink:to="ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:title="presentation: RisksAndUncertaintiesAbstract to ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/RelatedPartyTransactionsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="RelatedPartyTransactionsAbstract" xlink:title="RelatedPartyTransactionsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="MajorCustomersAxis" xlink:title="MajorCustomersAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="NameOfMajorCustomerDomain" xlink:title="NameOfMajorCustomerDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_MajorCustomer1Member" xlink:label="MajorCustomer1Member" xlink:title="MajorCustomer1Member" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NameOfMajorCustomerDomain" xlink:to="MajorCustomer1Member" xlink:title="presentation: NameOfMajorCustomerDomain to MajorCustomer1Member" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="MajorCustomersAxis" xlink:to="NameOfMajorCustomerDomain" xlink:title="presentation: MajorCustomersAxis to NameOfMajorCustomerDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="MajorCustomersAxis" xlink:title="presentation: ScheduleOfRelatedPartyTransactionsByRelatedPartyTable to MajorCustomersAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="RelatedPartyTransactionLineItems" xlink:title="RelatedPartyTransactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_RelatedPartyAgreementAbstract" xlink:label="RelatedPartyAgreementAbstract" xlink:title="RelatedPartyAgreementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RelatedPartyAgreementAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: RelatedPartyAgreementAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RelatedPartyAgreementAbstract" xlink:to="AccountsReceivableNetCurrent" xlink:title="presentation: RelatedPartyAgreementAbstract to AccountsReceivableNetCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RelatedPartyTransactionLineItems" xlink:to="RelatedPartyAgreementAbstract" xlink:title="presentation: RelatedPartyTransactionLineItems to RelatedPartyAgreementAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="RelatedPartyTransactionLineItems" xlink:title="presentation: ScheduleOfRelatedPartyTransactionsByRelatedPartyTable to RelatedPartyTransactionLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RelatedPartyTransactionsAbstract" xlink:to="ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:title="presentation: RelatedPartyTransactionsAbstract to ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/FairValueMeasurementsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="FairValueDisclosuresAbstract" xlink:title="FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:label="DebtSecuritiesAvailableForSaleTable" xlink:title="DebtSecuritiesAvailableForSaleTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="FairValueByMeasurementFrequencyAxis" xlink:title="FairValueByMeasurementFrequencyAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="FairValueMeasurementFrequencyDomain" xlink:title="FairValueMeasurementFrequencyDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="FairValueMeasurementsRecurringMember" xlink:title="FairValueMeasurementsRecurringMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueMeasurementFrequencyDomain" xlink:to="FairValueMeasurementsRecurringMember" xlink:title="presentation: FairValueMeasurementFrequencyDomain to FairValueMeasurementsRecurringMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueByMeasurementFrequencyAxis" xlink:to="FairValueMeasurementFrequencyDomain" xlink:title="presentation: FairValueByMeasurementFrequencyAxis to FairValueMeasurementFrequencyDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FairValueByMeasurementFrequencyAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to FairValueByMeasurementFrequencyAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="FairValueByFairValueHierarchyLevelAxis" xlink:title="FairValueByFairValueHierarchyLevelAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="FairValueMeasurementsFairValueHierarchyDomain" xlink:title="FairValueMeasurementsFairValueHierarchyDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="FairValueInputsLevel1Member" xlink:title="FairValueInputsLevel1Member" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel1Member" xlink:title="presentation: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel1Member" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="FairValueInputsLevel2Member" xlink:title="FairValueInputsLevel2Member" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel2Member" xlink:title="presentation: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel2Member" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="FairValueInputsLevel3Member" xlink:title="FairValueInputsLevel3Member" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueMeasurementsFairValueHierarchyDomain" xlink:to="FairValueInputsLevel3Member" xlink:title="presentation: FairValueMeasurementsFairValueHierarchyDomain to FairValueInputsLevel3Member" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueByFairValueHierarchyLevelAxis" xlink:to="FairValueMeasurementsFairValueHierarchyDomain" xlink:title="presentation: FairValueByFairValueHierarchyLevelAxis to FairValueMeasurementsFairValueHierarchyDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FairValueByFairValueHierarchyLevelAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to FairValueByFairValueHierarchyLevelAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="FinancialInstrumentAxis" xlink:title="FinancialInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_USTreasuryAndGovernmentMember" xlink:label="USTreasuryAndGovernmentMember" xlink:title="USTreasuryAndGovernmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="USTreasuryAndGovernmentMember" xlink:title="presentation: TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain to USTreasuryAndGovernmentMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FinancialInstrumentAxis" xlink:to="TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:title="presentation: FinancialInstrumentAxis to TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="FinancialInstrumentAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to FinancialInstrumentAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="CashAndCashEquivalentsAxis" xlink:title="CashAndCashEquivalentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BankTimeDepositsMember" xlink:label="BankTimeDepositsMember" xlink:title="BankTimeDepositsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="BankTimeDepositsMember" xlink:title="presentation: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to BankTimeDepositsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="MoneyMarketFundsMember" xlink:title="MoneyMarketFundsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="MoneyMarketFundsMember" xlink:title="presentation: RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember to MoneyMarketFundsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashAndCashEquivalentsAxis" xlink:to="RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:title="presentation: CashAndCashEquivalentsAxis to RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="CashAndCashEquivalentsAxis" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to CashAndCashEquivalentsAxis" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="ScheduleOfAvailableForSaleSecuritiesLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="AssetsFairValueDisclosureAbstract" xlink:title="AssetsFairValueDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="AssetsFairValueDisclosure" xlink:title="AssetsFairValueDisclosure" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsFairValueDisclosureAbstract" xlink:to="AssetsFairValueDisclosure" xlink:title="presentation: AssetsFairValueDisclosureAbstract to AssetsFairValueDisclosure" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="AssetsFairValueDisclosureAbstract" xlink:title="presentation: ScheduleOfAvailableForSaleSecuritiesLineItems to AssetsFairValueDisclosureAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtSecuritiesAvailableForSaleTable" xlink:to="ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:title="presentation: DebtSecuritiesAvailableForSaleTable to ScheduleOfAvailableForSaleSecuritiesLineItems" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueDisclosuresAbstract" xlink:to="DebtSecuritiesAvailableForSaleTable" xlink:title="presentation: FairValueDisclosuresAbstract to DebtSecuritiesAvailableForSaleTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://photronics.com/role/ShareRepurchaseProgramsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:label="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:title="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_September2020AnnouncedProgramMember" xlink:label="September2020AnnouncedProgramMember" xlink:title="September2020AnnouncedProgramMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareRepurchaseProgramDomain" xlink:to="September2020AnnouncedProgramMember" xlink:title="presentation: ShareRepurchaseProgramDomain to September2020AnnouncedProgramMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_ShareRepurchaseProgramsMember" xlink:label="ShareRepurchaseProgramsMember" xlink:title="ShareRepurchaseProgramsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareRepurchaseProgramDomain" xlink:to="ShareRepurchaseProgramsMember" xlink:title="presentation: ShareRepurchaseProgramDomain to ShareRepurchaseProgramsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain" xlink:title="presentation: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ClassOfTreasuryStockTable" xlink:to="ShareRepurchaseProgramAxis" xlink:title="presentation: ClassOfTreasuryStockTable to ShareRepurchaseProgramAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:label="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="StockRepurchaseProgramAuthorizedAmount1" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to StockRepurchaseProgramAuthorizedAmount1" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="plab-20241031.xsd#plab_StockRepurchaseProgramCommencementDate" xlink:label="StockRepurchaseProgramCommencementDate" xlink:title="StockRepurchaseProgramCommencementDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="StockRepurchaseProgramCommencementDate" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to StockRepurchaseProgramCommencementDate" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramExpirationDate" xlink:label="StockRepurchaseProgramExpirationDate" xlink:title="StockRepurchaseProgramExpirationDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="StockRepurchaseProgramExpirationDate" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to StockRepurchaseProgramExpirationDate" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesRetired" xlink:label="TreasuryStockSharesRetired" xlink:title="TreasuryStockSharesRetired" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="TreasuryStockSharesRetired" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to TreasuryStockSharesRetired" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="TreasuryStockValueAcquiredCostMethod" xlink:title="TreasuryStockValueAcquiredCostMethod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="TreasuryStockValueAcquiredCostMethod" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to TreasuryStockValueAcquiredCostMethod" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:label="TreasuryStockAcquiredAverageCostPerShare" xlink:title="TreasuryStockAcquiredAverageCostPerShare" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="TreasuryStockAcquiredAverageCostPerShare" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to TreasuryStockAcquiredAverageCostPerShare" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="TreasuryStockSharesAcquired" xlink:title="TreasuryStockSharesAcquired" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:to="TreasuryStockSharesAcquired" xlink:title="presentation: TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract to TreasuryStockSharesAcquired" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" xlink:title="presentation: EquityClassOfTreasuryStockLineItems to TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ClassOfTreasuryStockTable" xlink:to="EquityClassOfTreasuryStockLineItems" xlink:title="presentation: ClassOfTreasuryStockTable to EquityClassOfTreasuryStockLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract" xlink:to="ClassOfTreasuryStockTable" xlink:title="presentation: TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract to ClassOfTreasuryStockTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>13
<FILENAME>image00002.jpg
<TEXT>
begin 644 image00002.jpg
M_]C_X  02D9)1@ ! 0$ D "0  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 0I!V,# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HH
MHH **2DH%<6FFEHI-"W$Q2TN*,46!(**6BF.PVBEHIBL%+112*"BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **2FYI7%<?13:6BX7%HHHIC"BBB@ HHHH **** "BBB@ HHHH ****
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
M /A-8O[XI?\ A-(O[XKP[[=<?WS1]NN/[YH^ML/["B>X?\)G'_?%)_PF4?\
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
MTL=%=3!+TF^N@_X1J;^Z?RI/^$:F_NFLW19V1S"'<P1)3O,K<_X1J;^Z:/\
MA&Y_[I_*E[)E_P!HP[F'YE)YE;O_  C<_P#=/Y4?\(W-_=/Y4>Q8O[0AW,'S
M*/,K>_X1N;^Z?RI/^$:G_NG\J?L62\PAW,+S:/-K<_X1J?\ NFC_ (1N?^Z?
MRI^Q8EF,.YB>90):V_\ A')O[I_*C_A')O[II>Q97U^'<QO.H\ZMG_A&Y_[I
M_*D_X1J?^Z?RI>Q9'U^'<Q3+1YE;?_"-S?W31_PCDW]TT>Q92Q\.YB>92^96
MW_PCDW]T_E2_\(W-_=/Y4>Q97]H0[F'YE)YE;O\ PC<W]TT?\(W-_=/Y4>R8
M?VA#N87F4>96[_PC<W]T_E1_PC<W]T_E1[)A_:$.YA^91YM;G_"-S_W32?\
M".3?W3^5'L6/^T8=S$\RCS:V_P#A')O[IH_X1R;^Z?RH]BP_M&'<Q/-H\VMK
M_A&YO[IH_P"$:G_NG\J/8L/[1AW,3S*/,K;_ .$;F_NG\J7_ (1R;^Z?RH]B
MQ?VA#N8?F4OF5M_\(Y-_=/Y4O_"-S?W3^5'L6']H0[F)YM)YM;G_  C<_P#=
M/Y4G_".3?W3^5'L6/^T8=S$\VCS:V_\ A')O[I_*D_X1N;^Z:/8L/[1AW,7S
MJ3S:V_\ A&I_[I_*C_A&YO[I_*CV+#^T(=S$\RCS*W/^$<F_NG\J/^$<F_NG
M\J/8L7U^'<Q/,H\VMO\ X1N;^Z?RI?\ A&Y_[I_*CV+#^T8=S$\VD\RMO_A'
M)O[I_*C_ (1R;^Z:/8L?]HP[F)YM'FUM_P#".3?W3^5)_P (W/\ W3^5'L6'
M]HP[F(9:/,K;_P"$;G_NG\J7_A')O[I_*CV+%_:$.YA^91YE;G_".3?W3^5'
M_"-S?W3^5'L6']H0[F)YE+YM;?\ PC<_]T_E1_PC<_\ =/Y4>Q8?VC#N8?F4
MOFUM?\(Y-_=-)_PCDW]T_E1[%C_M&'<Q?-H\VMK_ (1N?^Z:/^$:G_NG\J/8
ML/[1AW,3S:/,K<_X1J;^Z?RI?^$;F_NG\J/9,7]H0[F%YE+YE;G_  C<W]T_
ME2?\(W/_ '3^5'LF']H0[F+YM'FUM?\ "-S_ -T_E2_\(W/_ '3^5'LF']HP
M[F'YM'FUN?\ "-S?W3^5)_PC<_\ =/Y4>R8_[1AW,3S:3S:W/^$:G_NG\J3_
M (1N;^Z?RH]BP_M"'<P_,I1)6W_PCDW]T_E1_P (Y-_=-+V3%]?AW,<2TOG5
ML?\ ".3_ -T_E1_PC<_]T_E2]DQ?VA#N8IEIOF5N?\(Y-_=/Y4G_  CDW]TT
M>R8_K\.YB"6GB>M?_A')O[IH_P"$;G_NG\J?L62\PAW,CSZ:9:V?^$;G_NG\
MJ7_A&Y_[I_*G[!@LPAW,3S*/,K<_X1R;^Z?RH_X1R;^Z?RH]BRO[0AW,3S*/
M,K;_ .$<F_NG\J/^$<F_NG\J/8L?]HP[F)YE+YM;7_".S?W3^5'_  CDW]T_
ME3]BQ?VC#N8_GT>?6O\ \(W/_=/Y4#PU/_=/Y4_8LEYC#N9'F9I,UN+X<F_N
MG\JD'AV;^Z:7L6"S"'<Y[.*3S*Z$^'9O[I_*HSX;F_NG\J/8LK^T(=S#$M/$
MM;'_  C4_P#=/Y4X>')A_"?RI.BQ/,8=S&\RFF2MS_A'9O[I_*D/AN8_PFE[
M%D_VC'N8!EIOFUO'PS/_ '3^5)_PC$_]T_E3]DP_M&'<P?-IPEK;_P"$9G_N
MG\J7_A&I_P"Z:/8L/[1AW,834[SJV/\ A&I_[I_*C_A&Y_[I_*E[%E+,(=S%
M,M-,E;G_  C<_P#=/Y4G_".3?W31[%C^OP[F():>)ZV/^$;F_NFC_A&Y_P"Z
M?RH]BR7F$.YC^?33+FMK_A&I_P"Z?RI1X:G_ +I_*G[%@LPAW,/S*42UN?\
M"-3_ -T_E1_PC<_]TT>Q8_[0AW,834OG5L?\(W/_ '3^5*/#<_\ =/Y4O8L/
M[0AW,7S*;OK>'AN;^Z?RH/AN;^Z?RH]DP_M*/<P#)2>;6\?#<_\ =/Y4S_A&
MI_[I_*CV+%_:4>YA^;1YE;G_  C4_P#=/Y4O_"-3_P!T_E1[%C_M&'<PO,I?
M-K<_X1J?^Z?RI/\ A&I_[II^Q8?VC#N8GFTOFUM?\(U/_=-+_P (U/\ W3^5
M'L6"S*/<Q/,H\VMS_A&Y_P"Z?RI/^$:G_NG\J/8L?]HP[F)YM'FUM?\ "-3_
M -TT?\(U/_=-'L6+^TH]S%\VCS:V_P#A&I_[I_*E_P"$:G_NG\J/8L?]HP[F
M'YM'FUM_\(U/_=/Y4?\ "-3_ -T_E1[%C_M&'<Q/-H\VMO\ X1J?^Z?RI?\
MA&Y_[I_*CV+#^T8=S#\VCS:W/^$:G_NG\J3_ (1J?^Z?RH]BP_M&'<Q/-H\V
MMO\ X1J?^Z?RI?\ A&I_[I_*CV+#^T8=S#\RCS:W/^$;F_NG\J0^&I_[I_*C
MV+%_:,.YA^=1YU;7_"-3_P!T_E0/#4_]T_E3]BQ?VE#N8OFT>96X/#4W]T_E
M2_\ "-3?W3^5+V3#^T(=S"\VCSJVSX:G_NG\J3_A&I_[I_*G[%A_:,.YB^=1
MYE;0\-3_ -T_E3O^$;F_NG\J/9,/[0AW,/S*/-K=_P"$:F_NG\J;_P (U/\
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
M_8D7]RNEV+2>6M'(AK%3[G.#0XO[@IPT.'^X*Z+RUI=BTN1 \5/N<[_84/\
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
M -:0^+C_ '_UJ560_P"S)=CUK^T$_O"C^T$_O5Y'_P )>?[_ .M'_"7G^_\
MK5>V0O[,EV/7/[13^]1_:*_WJ\F'BX_W_P!:/^$M/]_]:GVR'_9DNQZS_:*?
MWJ/[03^]7DI\7G^_^M-_X3 _W_UJE60O[,EV/7/[03^]2?VBO]X?G7DO_"7G
M^_\ K2_\)<?[_P"M)UD']FR['K/]HK_>'YTO]H)_>KR7_A+C_?\ UIO_  EY
M_O\ ZT*L@_LV78]<_M!/[U']HK_>%>1_\)@?[_ZTO_"7G^_^M-UD']FR['K7
M]HK_ 'A^=']HK_>%>3?\)<?[_P"M)_PEQ_O_ *U/MD']FR['K?\ :"_WA1_:
M"_WA7D?_  F!_O\ ZTH\7G^_^M5[5!_9DNQZU_:"_P!ZC^T%_O5Y./%I_O\
MZTO_  EI_O\ ZTO:C_LR78]8_M!/[PH_M!/[PKR4^+B/X_UIO_"8'^_^M-54
M+^S)=CUHZBO]ZD_M)?[U>3?\)<3_ !_K2_\ "6'^_P#K1[9%++)=CUC^TE_O
M4X:BO]ZO)?\ A+#_ '_UI/\ A+B/X_UH]L@>62['KG]H)_>%']H)_>KR/_A+
MS_?_ %IX\7'^_P#K0ZJ)_LR78]8_M!?[U+_:"_WJ\G_X2T_W_P!:0^+B/X_U
MI>U'_9DNQZS_ &@G]X4AU%/[U>2GQ>?[_P"M)_PEY/\ '^M/VR#^S)=CUDZD
MO]ZD_M)?[U>4?\)83_'^M+_PE9_O_K1[9#_LR78]8&HK_>IW]H)_>KR0^+2/
MX_UI/^$O/]_]:/;(3RR78]<_M!/[U']H+_>KR0>+S_?_ %I__"6G^_\ K2=5
M"_LR78]8_M!?[U']H)_>KR?_ (2T_P!_]:8?%Y_O_K0JJ#^S)=CUO^T$_O4T
MZBO]ZO)?^$O/]_\ 6E_X2TG^/]:KVR&LLEV/5_[27^]2C4E_O5Y1_P )6?[_
M .M)_P )81_'^M+VR'_9DNQZT-13^]2_V@G]X5Y'_P )>1_'^M*/%Y_O_K1[
M9"_LR78];_M!?[U)_:"_WJ\G'BX_W_UI?^$M/]_]:7M0_LR78]8_M!/[U']H
M)_>%>3'Q<1_'^M,_X3 _W_UIJJA?V9+L>MG45_O4W^TE_O5Y-_PEQ/\ '^M+
M_P )8?[_ .M#K(I99+L>L?VDO]ZE&HK_ 'J\F_X2P_W_ -:3_A+B/X_UH59
M\LEV/7/[03^\*/[13^\*\C_X3 _W_P!:7_A+S_?_ %H=9$_V;+L>M_VBO]ZC
M^T4_O5Y+_P )<?[_ .M)_P )<?[_ .M3[9"_LV78];_M!/[U']H)_>KR/_A,
M#_?_ %H_X2\_W_UJO;(?]F2['KG]HI_>H_M%?[U>3#Q<?[_ZT?\ "6G^_P#K
M4^V0_P"S)=CUG^T4_O4?V@G]X5Y*?%Q_O_K3?^$P/]_]:I5D+^S)=CUS^T$_
MO4?VBO\ >KR0>+S_ '_UIP\7'^_^M)UD/^S)=CUG^T5_O4?V@G]ZO)O^$M/]
M_P#6FGQ>?[_ZT*L@_LR78];_ +03^\*/[03^]7D?_"8'^_\ K2CQ>?[_ .M-
MUD+^S)=CUO\ M%?[U']HK_>KR;_A+3_?_6@^+C_?_6I]LA_V9+L>L_V@G]ZC
M^T$_O5Y(?%Y_O_K2?\)@?[_ZU7MD+^S)=CUS^T4_O4?VBG]ZO)!XO/\ ?_6E
M_P"$N/\ ?_6I=9!_9LNQZU_:*?WJ/[03^]7DA\7G^_\ K2?\)@?[_P"M4JR#
M^S9=CUS^T4_O4?VBG]ZO(_\ A+S_ '_UI?\ A+C_ '_UI.L@_LV78];_ +13
M^]1_:*?WJ\E_X2X_W_UI/^$O/]_]:%60?V;+L>M_V@G]ZC^T4_O5Y'_PF!_O
M_K2_\)>?[_ZTW60?V9+L>M_VBO\ >H_M%/[U>2_\)<?[_P"M)_PEQ_O_ *U/
MMD']FR['K?\ :*?WJ/[03^]7D?\ PEY_O_K1_P )@?[_ .M4JR#^S)=CUS^T
M4_O4?VBG]X5Y'_PEY_O_ *TO_"7D?Q_K3]JA/+I+H>NC4$_O"GB^3^\*\=/C
M,C^/]:5/&I)^_P#K3]H82P,D>R"\0_Q"I!<@]Z\NLO%1E(^?]:Z:QU4S <U2
MF82PS1UZS9[U*K9K(@GW <U?C?-:)IG/.G8MBEIBFGU5CG:$S2@T;:=MIZ$"
M@TZF@4ZD 4444@"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "DQ2T4K ,*U7GAW#I5ND(!I<HTSFKS
M3C)GBN?N] >3.%KT,Q*>U,-NA["ERFBJ-'DMSX4D?/RFLF?P5*W\!KVTVD7]
MT4TV4/\ ='Y4N4T6(DCP5_ TV?N&H&\$RC^ U[V]A"?X!^55Y--B/\ _*I<#
MHAB6>"2^$98Q]TUG3Z')#V->]7>D1LIP@_*N:U'0=V<)^E9N!VT\2CQF6VDB
M/>H"SKW->B7WAEV)PA_*L>7PO+G[A_*LG!G?3Q$3D_.<=S1YS>IKHI/#,H_A
M-59-#DCZJ:S<6=M.M%F1O8]Z<"_K5F2S,7457+!3BLG=';3Y6/4MZU(&;UJ%
M7%2@YK)R9TQA$"6/>F%7/>I:7(I<[-%3B5MC^M&&'>K!(IAQ1[1C]C$BRWK2
MY?UIV*<*7.QJA$9\_K2_/ZU(,44^=EK#Q(]S>M&YO6GD4 4_:%K#Q(\,>]-V
M/ZFK Q3N*7M&/ZM$J[7'>C+>M6#BF%:7M&'U6)%EO6F_/ZU-BEP*:FP6%B0@
M/ZTX;O6I>**'497U6 S+>M)\Q[U)BG#%3[1@\+$@VOZT;7]:LC%!Q3]HQ?58
ME?YAWI<MZU(128I<[']5B1X<]Z;L?UJP,4[(Q351B>&B5=KCO2Y;UJ<XIAJN
M=D_58D?S>M)M<]ZE%/&*7M&'U6)7V/ZT8<=ZLY%-.*/:,?U6)#EO6D^;UJ3%
M*,4^<GZK$BVMZT8?U-3\4'%+VC#ZM$B!8=Z7<_K3C28H]HROJT1OSGO2;']:
MF&*?Q1[1A]6B5L..]+N8=ZF.*C-'M&'U:(W<WK3<.>]2"G#%'M&)X:)#M?UI
M1O'>IN*:<4>T8+#1&[G]:3+GO3J<,4>T8_JT2+:_K1M?UJP,4'%'M&'U:)!E
MAWI=S>M/--H]HP^K1&'<>])M?UJ88I>*/:,7U:) -X[TX,P[U(<4TT>T8+#1
M&[G/>DPY[T\5(,4>T8_JT2#8_K2C<.]6.*8<4>T8?5HD>YO6D)8]Z<:44>T8
M?5HD6']:,/ZU.,4<4>T9/U:)$"P[TNY_6G&DH]HREAHC?G/>DV/ZFI1BGY%'
MM&'U:)7PX[TN6'>ICBF&E[1A]6B,W-ZTTASWJ2G#%"FQ/#1(=K^M'SCO5CBF
MG%/VC%]6B0Y;UH^<]ZDQ2C%+VC']5B1;7/>EVOZU8&*"11[1C^K1(/F'>C<W
MK4AIM'.P^K1&?,>])L?U-3#%/R*/:,/JT2OM<=Z7+#O4QQ3#1[1A]6B,RWK2
M8<]Z>*>,4>T8?5HD&Q_6EPX[U8R*:<4>T8?5HD6YO6C+'O3C2BCG8?5HD>US
MWI-C^M6!BE.*/:,/JT2M\X[T9;U-3'%-Q1[1B^JQ(\.>]&Q_6IABGC%'M&/Z
MK$K;7]:7YO6ISBFG%5[1B^JQ(OF]:3#GO4HIXQ1SL/JL2OL?UHPX[U9R*:<4
MO:,?U6)#EO6CYCWJ0XI1BGS,7U6)%M<]Z38_K5D$4O%/V@WAHE7#CO33N]:M
M%:84IJHS">'B4V#GN:6*-]PYJ<@"GQ,-PK2-1GGUL.C<TI6!6N]T@D!:X?3&
M&5KM]+Z+6\9GD8BDD=A:/\HK6A.:Q;/H*V;?M73!GBUTD7XQQ4P%11GBI@:W
M3/.E>XM+24M!F%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !2&EHH :::
M:?1B@=R/%&P5)BC%2QW(6A4CI562R1NJUH4F*FPU-HQ9-*B;^ 53DT6(_P
MKI2E-,(-#B;1KM'(3:''C[@K$O\ 000<)^E>C&V4]JADT]'ZBH<+G3#&N)XG
MJ7A^0D[4_2N9N?#]P'^Z?RKZ&ET.%^JC\JSKGPU 1G8/RK-T+G;3S6QX#_8T
MZ=5/Y4OV"1.HKV&\\.1KG"?I7/7FA[<X3]*YYT#TZ.:)GG;PLM5W.VNMN]'D
M&<(:PKK2IP3A#67LCNCF*9DF6E\T4]M-N,_<-(-.N/[AJ73.B..BQ XIVZG#
M3Y_[IJ5=/F_NFLW39M'&1(@:7-65T^;^Z:4V$O\ =-+D9HL6BMD4%A4YL)O[
MIIAL)_[II<C+6+B0EQ3?,J4Z?/\ W33#I\_]TU2ILKZY$3S12^8*/[/N/[IH
M^P7']TU7LV/Z[$-XI-U/&GS_ -TU(-/F_NFE[-A]=B5]U+OJQ_9\W]TTPZ?/
M_=-'LFQ?78D?F"D\P4_^SY_[IH_L^?\ NFG[%E+'1&>91YE2?V?/_<-']GS_
M -TT>Q97UV(S>*7>*?\ V?/_ '30-/G_ +II^R8OKL>Y'OI-U3C3Y_[II?[.
MF_NFI=)DO&Q*V^DWBK!T^?\ NFHSI\_]PT>S8OKL2/>*7?4@T^?^Z:>-.F_N
MFCV;#Z[$AWTF^K/]G3?W33#IT_\ =-'LV'UV)!O%+OI_]GS_ -TTX:=/_=-'
MLV'UV)%NHW58&G3?W30=.F_NFCV;#ZY$K[Q2;Q4IT^?^Z:3^SY_[IH]FP^NQ
M&;Z-]2#3Y_[IIW]GS?W#1[)B^O1(=])O%3'3Y_[IIO\ 9\_]TT>R8+&Q(]XI
M=U2#3Y_[AIXTZ;^Z:/9L?UV)!NHWU9_LZ;^Z:8=.G_NFCV;#ZY$@WBEWBG_V
M?/\ W#2C3Y_[IH]FP^NQ(]]&^IAI\_\ <-!T^?\ N&CV3)^O1(=XI-XJ4Z?/
M_=-)_9\_]TT>S97UV(S?1NJ8:=/_ '33_P"SIO[IH]FP^N1*VZDWBK!TZ;^Z
M:8=/G_N&CV;#Z[$BWBEWT\:?/_=-.&GS_P!TT>R8GC8D6^C?4W]GS?W#33I\
M_P#=-'LF'UZ)%O%+O%/_ +/G_NFE&GS_ -TT>S8_KL2/=1NJP-.F_NF@Z=-_
M=-'LV'UR)7WBDWBICIT_]TTW^SY_[IH]FP^NQ&;Z-]2#3Y_[IIW]GS?W#1[)
MB^O1(=])O%3'3Y_[IIIT^?\ NFCV3!8V)'O%+OIXT^?^Z:D&G3?W31[-C^NQ
M(=U)O%6?[.F_NFF'3I_[IH]FP^N1(-XI=XIYT^?^Z:4:?/\ W31[-A]=B1[Z
M-]3#3Y_[IH.GS?W31[)B^O1(=])O%2G3Y_[II/[/G_NFCV;']=B,WTN^I5T^
M?^Z:?_9TW]TT>S8?78E;?2;Q5@Z=-_=-,.GS_P!TT>S8?78D6\4N^GC3Y\_=
M-2+ITW]TT>S8?78D.^DWU9_LZ;^Z:8=.G_NFCV;#ZY$@WBEWBGG3Y_[AI1I\
M_P#<-'LV'UV)'OHWU,-.G_N&C^SI_P"X:/9,GZ]$AWTF\5*=/G_NFF_V?/\
MW#1[-E?78C=]&^I!I\_]TT[^SY_[II>S8OKT2'?1O%2G3Y_[IIO]GS_W31[-
M@L;$CWBEWT\:=/\ W34@TZ?^X:?LV/Z[$@WTNZK']G3?W30=.F_NFA4V'UV)
M7W4FZK']G3_W31_9T_\ =-5R,GZ]$K[Z4/4W]G3_ -PT?V=/_=-+V;#Z]$8'
M%*7&*7[!/_=-(;"X_NFFJ;,I8R+*TCBF(_S58;3IS_ :6+3)]P^0UK&FSBJX
MN)M:4WS+7?:1T6N+TK3Y05RIKO-)MG4+D5M&!Y&(KJ1T]H/E%:T(K/M(B%'%
M:L*5T1B>-6D68^E3"FH.*D K=(X),44M)2TS,**** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****5@$ICIN%2446 H2
MV0?M5&;1D?\ A%;M)BERHT522V.4E\-QO_"*HR^$HF_@%=P5'I32@]*ATT:K
M$374\^?P;%G[@J%O!\0_@%>B&(>E1M #VJ'21M'%R74\[/A*,?P"F'PJ@_@'
MY5Z&;4'M3#9@]JET3>..DNIY[_PC*?W!1_PC*?W!^5=^;(>E)]B'I4^R-5F#
M[G!#PNA_@%.'A6,_P"N[^R#TIPM1Z4U10GCY=SA/^$3C/\ I?^$1C_N"N]%J
M/2G_ &8>E6J2(>/GW//_ /A$8_[@H_X1&/\ N"N_^SCTIIMQZ4_9(7UZ?<X'
M_A$XQ_ *3_A%8Q_ *[_[./2D^R#TJ7212Q\^YP'_  BR?W!^5.'A2,_P"N^%
MF/2G"T'I25('F$NYP'_")1_W!2?\(E'_ '!^5>@_91Z4?91Z5HJ:)^OS[GGO
M_")Q_P!P4H\)Q_W!7H'V0>E)]E'I5^SB/^T)]S@AX3C_ +@I?^$3C_N#\J[S
M[./2C[./2E[)!]?GW.!/A2/^X*3_ (15/[@KO_LP]*3[(/2DZ2']?GW.!_X1
M2/\ N#\J/^$3C_N#\J[[[*/2C[,/2H=)"^OS[G _\(G'_<'Y4?\ "*QC^ 5W
MWV8>E'V4>E)4D/Z_/N<#_P (K'_<%'_"*1G^ ?E7??91Z4?9@.U5[.(?7Y]S
M@O\ A$H_[@I/^$3C_N#\J[[[./2C[,/2CV2%]>GW.!_X15/[@H_X16/^X*[[
M[(/2C[*/2G[)#^OR[G!?\(G'_<%'_")1_P!P5WOV8>E'V<>E+V2%]>GW. _X
M1.,?P"D_X15/[@KT#[*#VH^R#TI>R0_K\NYP'_"*1G^ 4H\)1_W!7??91Z4O
MV8>E/V*%]?GW.!_X1*/^X*3_ (12/^X*[_[,/2C[*/2G[) L?/N<!_PBJ?W!
M1_PBD9_@%=]]D'I1]F [4>R0_K\^YP7_  B4?]P4A\)Q_P!P5WWV<>E'V8>E
M3[)"^O3[GG__  BB?W!1_P (HG]P5Z!]D'I1]D'I1[)#^OR[G CPG'_<%+_P
MB4?]P5WWV8>E'V<>E/V*%]>GW. _X12,?P"C_A%4_N"N_P#LH]*3[(/2G[)#
M^OS[G _\(K'_ '!2_P#")1_W!7>_91Z4?9QZ4O9(7U^?<X$^$H_[@I/^$4C'
M\ KO_LX]*/LH/:E[)!]>GW//_P#A%4_N"E'A.,_P"N_^R#TH^RCTI^R0?7Y=
MS@O^$2C_ +@H_P"$3C_N"N^^SCTH^S#TI^Q0?7Y]S@/^$5C_ +@H_P"$53^X
M*[[[*/2C[(/2CV2']?GW.!_X1.,_P"E_X1*/^X*[W[,/2C[./2E[)"^O3[G
M'PG&/X!2?\(JG]P5Z!]F![4?9!Z4O9(?U^7<X#_A%(_[@I1X2C_N"N^^RCTI
M?LP]*?L4+Z_/N<#_ ,(E'_<%)_PBD?\ <%=_]G'I1]E'I3]B@6/GW. _X15/
M[@H_X12/^X*[[[(/2C[,!VH]DA_7Y]S@O^$2C_N"D/A./^X*[[[./2C[,/2I
M]DA?7I]SS_\ X11/[@H_X15/[@KT#[(/2C[(/2CV2']?EW.!'A.,_P  I?\
MA$H_[@KO?LP]*7[./2G[%"^OS[G ?\(G&/X!1_PBJ?W!7?\ V8>E)]D'I3]D
MA_7Y]S@?^$5C_N"E_P"$3C_N"N]^RCTH^SCTI>R0OK\^YP7_  B4?]P4G_"*
M1C^ 5WWV<>E'V4'M2]DAK'S[G ?\(LG]P4O_  BD9_@%=]]D'I1]E [4>R0?
M7Y=S@O\ A$H_[@I?^$2C_N"N\^SCTI1;CTH]DA?7I]S@O^$3C_N"E_X1./\
MN"N]^S#TI?LP]*?LD3]>GW. _P"$2C_N"D_X1*/^X*[_ .SCTIOV<>E'LD/Z
M]/N< ?"<?]P4G_"*)_<%>@?9@>U'V0>E+V2*^OR[GG__  BD?]P4X>$H_P"X
M*[[[(/2C[,/2FJ*%]?GW.#_X1*/^X/RI?^$3C_N"N\^SCTI?LP]*/8H7U^?<
MX/\ X12/^X*/^$4C_N"N]^S#TI/LP]*/9(/K\^YP7_"*1_W!1_PBD?\ <'Y5
MWGV<>E'V<>E'L4'UZ?<X+_A$X_[@H_X1./\ N"N^^S#TIWV4>E'LD+Z]/N>?
M_P#")Q_W!1_PB4?]P5W_ -F'I2_9AZ57LT'UZ7<\^_X1&/\ N#\J<OA*,'[@
MKO\ [,/2E^S#TH]FB'C)/J<?;>&TCQ\HK9MM*6/'%;(A [4X(!34#&5=LK1V
MP4=*G6/%2@4N*JQBYMB"G T8I<4S-L6EI*6F2%%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44E&: "B
MBDIDW%I***0)ABC%+FDH'<3 I"*4TUFQ2L@38A%  J)Y@HJG/J"Q#K1H6E)F
MF,4[BN5N?$D<.<L*S9/&L2'&\471HJ4V=V<>M-.*X/\ X3B$_P 8IP\:Q'^,
M5+DC18>IV.XR!3?, [UQ!\91'^,4T^+XS_&*EU(FL<'4?0[H2KZT\./6N!_X
M2Z/^^*>/&$0_C%3[:)3P%7L=Z&'K1N'K7"?\)G%_?%)_PF<7]\4U5B3]0K=C
MN]P]:0L/6N$/C*+^^*3_ (3*+^^*KVL1_4*W8[K</6C<*X3_ (3*+^^*/^$R
MB_OBAUHC^HUNQW>\>M+O'K7!_P#"8Q?WQ2_\)A%_?%0ZJ%]1J]CN]P]:.*X8
M>,8O[XI1XRB_OBE[5"^I5>QW'%&X>M<1_P )E%_?%-/C&+^^*?M8A]2J]CN-
MP]:-P]:X7_A,8O[XI/\ A,HO[XI^TB/ZC5['=9%*&'K7"?\ "91?WQ2CQE%_
M?%/VL1_4:O8[O>/6C>/6N%_X3"+^^*/^$QB_OBCVL1?4*O8[@L/6C(KAO^$R
MB_OC\Z3_ (3*+^^/SI>UB/ZC5['=[AZTN\>M<(/&,7]\4O\ PF$7]\4_:Q%]
M1J]CNMPI,CUKAO\ A,8O[XI/^$RB_OBJ56(?4:O8[K(]:7</6N$_X3*+^^*7
M_A,8O[XH=6(?4:O8[K>/6DW#UKAO^$PB_OBD/C&+^^*CVL0^HU>QW.12[AZU
MPG_"91?WQ^=+_P )E%_?%'M8C^HU>QW>\>M&X5PO_"81?WQ1_P )A%_?%-58
MB^H5>QW.X>M&17"_\)E%_?%'_"91?WQ5>UB'U&MV.[W#UHWCUKA?^$QB_OBC
M_A,(O[XI.K$/J-7L=R6'K2;AZUPY\8Q?WQ3?^$RB_OC\ZGVL1_4:O8[K<*4,
M/6N$_P"$RB_OC\Z</&,7]\4>UB'U&KV.ZWCUHW#UKA?^$PB_OB@^,8O[XJE5
MB+ZC5['<Y%&X>M<+_P )E%_?%'_"91?WQ3]K$/J-7L=WN'K1O'K7"_\ "81?
MWQ1_PF$7]\5+JQ#ZA5['<[AZTF17#?\ "91?WQ2?\)E%_?'YTO:Q']1J]CN]
MP]:7>/6N$'C&+^^*7_A,(O[XH]K$7U&KV.ZW#UI,CUKAO^$QB_OBD_X3*+^^
M*I58A]1J]CNLCUI=P]:X3_A,HO[XI?\ A,8O[XINK$/J-7L=UO'K2;A7#?\
M"81?WQ1_PF,7]\5/M8A]0J]CN,CUI<BN%_X3*+^^*/\ A,HO[XI^TB'U&KV.
M[W#UHWCUKA/^$QB_OBC_ (3&+^^*7M8A]1J]CNMP]:,BN%_X3*+^^*/^$RB_
MOBJ]K$/J-7L=UN'K2[QZUPH\8Q?WQ1_PF$7]\4G5B'U"KV.YW#UI-P]:X?\
MX3&+^^*;_P )E%_?'YU/M8C^HU>QW6X4H8>M<)_PF47]\?G3AXQB_OBCVL0^
MHU>QW6\>M)N%<-_PF$7]\4'QC%_?%-58B^HU>QW&12Y%<+_PF47]\4?\)E%_
M?%/VD0^HU>QW>X>M&\>M<+_PF,7]\4?\)A%_?%+VL0^H5>QW)8>M)D5PQ\91
M?WQ2?\)E%_?'YTO:Q']1J]CN]P]:7>/6N$'C&+^^*7_A,(O[XH]K$/J-7L=U
MN'K2;AZUPW_"8Q?WQ2?\)E%_?%4JL1?4:O8[K</6EW#UKA/^$RB_OBE_X3&+
M^^*;JQ#ZC5['=;QZT;AZUPO_  F$7]\4'QC%_?%)58A]0J]CN<CUHW#UKA?^
M$RB_OBC_ (3*+^^*KVL0^HUNQW>X>M+O'K7"_P#"8Q?WQ1_PF$7]\4O:Q#ZA
M5['>;AZTN5K@_P#A,HO[XH_X32+^^*7M(F;P55=#O,BDW#UK@CXVB_YZ"D'C
M:(G[XH]HA?5*BZ'>Y'K29%<;#XLCD_C%:4&MI+_$*3FA?5YKH;^:7-9T=Z'[
MU927=34KD2IM;EH-2YJ->:>!5F30ZEI*6F2%%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 E)3J2@30E%
M%)1<0M)125-Q"T444 A:A<&IJ"N:+FBT,V9&(K"U*&4J<9KK&B!JO+9H_44K
M&\*B1Y+JUI=$MMW5QM]9WP8G+5[U<:/%)G*UAW_AV$J?D'Y5#1VTJZ/#)/ML
M75FJ$W]RAY<UZ/JV@!0VU/TKBM1TB12<+7-.Y[&'E"1G+JL_]\U,NI3G^,U4
M-A*IY4T]82O45RSDSV*-*#+?]H3_ -\TTZC/_?-0X%(0*P<V>A#"P8\ZE<?W
MS2?VE<9^^:C*BD\NCVC.CZI#L2_VE<?WS2?VE<?WS4?E4>55<[)^JP[#_P"T
M;C^^:/[1N/[YIOET>6*7M&'U.'8D&HW']\T_^TI_[YJML%&VG[1DO!0[%G^T
M;C^^:7^T;C^^:KA14@44<[)^I1[$G]HW']\TG]HW']\TPH*:4I>T8U@8]B0Z
ME<?WS33J-Q_?-1^71Y8JO:,KZC#L/_M&XS]\TX:C<?WS47EBC8*.=C^I0[%@
M:E/_ 'S0=2G_ +YJ#;2;:GVC#ZE'L2G4;C^^:;_:-Q_?-,V"C8*/:,/J4.Q,
M-2G_ +YIW]IS_P!\U6V4FVG[1B^IQ[%DZE/_ 'S3#J-Q_?-1;:-@H]HP^IQ[
M$HU&X_OFGC49_P"^:@V"C92]HQ_4H=BS_:4_]\TPZC/_ 'S46VDV4>T8?4H]
MA_\ :-Q_?-*-1N/[YJ/8*391[1A]2AV+(U*?^^:#J4_]\U6VT;:?M&+ZG'L2
MG4;C^^:3^T;C^^:CV4NP4>T8_J4.Q,-1G_OFG_VE/_?-5ME+MH]HP^I0[$QU
M&?\ OFF'4;C^^:CV4;!2]HP^I0[$@U&X_OFGC4I_[YJOL%&VG[1B^IQ[%G^T
MY_[YIK:E/_?-5]M+LH]HP^IQ[$G]HW']\TX:C<?WS46P4;!2]JQ_4H=BP-2G
M_OF@ZE/_ 'S4&VC;1[1A]2CV)#J-Q_?--_M&X_OFF;!1L%'M&'U*'8E&I7']
M\T_^TI_[YJMLHVT_:,7U./8L'4I_[YIAU&X_OFHMM&P4>T8+!Q[$@U&X_OFI
M!J4_]\U7V"C;1[1A]3CV+/\ :<_]\TTZE/\ WS5?;2[*/:,/J<>Q(=1N/[YI
M1J-Q_?-1[!2;!1[1A]2AV)_[2G_OF@ZE/_?-5]E&RCVC)^I1[$QU&X_OFD_M
M&X_OFH]E+L%'M&4L%#L3#4KC^^:=_:4_]\U6V4;:/:,/J<>Q8.I3_P!\TPZC
M<?WS46VC8*/:,%@X]B0:C<?WS3QJ4_\ ?-0[!2;:/:,/J<>Q9_M.?^^::=2G
M_OFH-M&VCVC#ZG'L2?VC<?WS2C4;C^^:CV"C8*7M6/ZE#L6!J4_]\T'4I_[Y
MJOMI=M'M&'U*/8D.HW']\TW^T;C^^:9LHV"CVC#ZE#L2C4KC^^:>-2G_ +YJ
MMLI-M/VC%]3CV+)U*?\ OFF'4;C^^:BVT;!1[1A]3CV)!J-Q_?-2#49_[YJ#
M8*-E+VC']2AV+/\ :4_]\TTZC/\ WS4.VDV4>T8?4H=AYU&X_OFE&HW']\U'
ML%)L%/VK#ZE#L6!J4_\ ?-+_ &G/_?-5ME&RCVC)>#CV)SJ5Q_?-1MJ5Q_?-
M,\ND,8JE49A/!1[#6U*Y_OFB/4KG=]\TQHQ1'&-U:*HS@JX6*Z'1Z9?SDC+&
MNXTNZD(7+&N$TQ!D5V^ECA:UC)L\RM22.QLY6('-;=NY.*Y^SZ"MNW[5T09X
M^(BC6B/%3BJL6<5.*ZD>7-:CZ6DI:9F%%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 44A-)FE<5QU%-S2T7"XM%)13&+13<T9I7%<=12
M44QBT4E% KBT4E+0,**** "BBB@ HHI* %HI**!7%HI**!BT4E)0*XZBDI:!
MA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 E)2T8IB:$I:,4M(5A,48I:*!V$Q1BEHH&%%%% !2$4M)0 PH#5
M:>W# U;)IAYJ6BXMHYV\TM9,\5SE[X=1L_*/RKT!HMU5)[0$'BLI4[G=1Q+B
M>1W^@K'G"UR]]9^43@5Z[JMCPW%<)JU@<M\M<=2G8]["8VYP4F033 QK5N;)
M@Q^6J3V[#M7(X'NTL6B$&I5Q411AVIN7':IY&=BQ2+8 Q2[15/S'%*)'-/D+
M^L(L$"F&F@L>U!5O2CD']80AIN:1@WI3"']*7(4L1$E#4X-4&']*4!_2CE92
MKQ+(:GC%5?G':EW/Z4*)7MXEK IAQ4.]_>C+'M5<C#VZ'YHS3-K>E&&]*7LV
M/V\23BCBH?G]*/G]*7*'UB)+D4F:9A_2C#>E'(P]O$DXI<"HOG]*3Y_2CE8>
MWB2\4E,^?THPWI1R,/;Q),TO%18;TH^?THY&'MXDO%)Q47S^E+A_2CD#ZQ$?
MFEXJ/#>E&&]*.1A[>)+Q1Q4/S^E'S^E/E#V\27BDS3,-Z48;TI<C#V\23BEX
MJ+Y_2D^?THY ^L1)N*3-1_/Z48;THY&'MXCZ7BH\-Z4?/Z4<C#V\27 I.*B^
M?TI?G]*?*'MXC\TN:CPWI1AO2ER,/;Q)>*.*A^?TH^?THY0^L1)<BDS3,/Z4
M8;THY&'MXDG%+@5%A_2D^?THY6'MXDO%)3/G]*,-Z4<C#V\1]+Q4>&]*/G]*
M.1A[>)+@4G%1?/Z4OS^E'*'MXC\TM1X;THPWI1R,/;Q)>*.*A^?TH^?TI\H>
MWB2\4F:9AO2C#>E+D8>WB2<4N!46']*3Y_2GRL/;Q)>*.*B^?TI</Z4G$/;Q
M'YI>*CP_I2?/Z4E$/;Q)L"DXJ+Y_2E^?TJN5A[>(_-+FH\-Z48;TI<C#V\27
MBCBHOG]*3Y_2CE#ZQ$E.*3-,PWI1AO2CD8>WB2<4O%18?TI/G]*.5A[>)-Q2
M<5'\_I2X;TJN4/;Q'TO%1X?TIOSCM1R![>)-Q1Q4&7]*7Y_2ER#]O$DS2C%1
MX;TI<-Z4N1B]O$F %+@5!E_2C<_I2Y62Z\28@4UL4S+^E(=_I6BB92KQ&OBD
M3&ZF.']*:@?<.*M19Y]:K%G2:;C*UVNE]%KAM,W9'%=MI><+6L8L\BO),Z^R
MZ"MRV'2L*RS@5NVO:NJ"/#Q)IQ#BIP*BBZ5,.E=*1Y,MPQ2T451 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1124 +129HH%<6BBB@844
M44 %%)10 M%)FC-*X"T4F:,T[@+1244 +129HH 6BDHS0 M%-W4FZ@=A]%-S
M2YH"P8I,49I-U(7*+BEQ3=U+F@.4=28HS29IA8,48I-U+NHL'*+2TF:,T!8*
M*3=2;J8<HZEIN:7-(+"T4W-)NH'8?13-]+NH"PZDHS10*P8HHS10%@I:2C-
M6"C%-W4;J+ARCJ6F;J=F@+"T4F:,T +129HH 6BDHS0 M%-S1FBP[#J*2EH$
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !24M% #<4F*?24#N-Q3'7(J6DQ0-,R+NR\T'BN?O- \W/R_I7;;
M133$I[5G*"9M"O*&QYA<>%,D_)^E9DWA/'\'Z5Z[);H>U4Y;)6_AK"5%'93S
M":/()/"IS]S]*A/A,G^#]*]:?35)^[3?[,7^[6?L3LCF4NYY+_PB1_N?I0/"
M9'\'Z5ZW_9B_W:0Z8O\ =JU01HLS?<\H'A8C^#]*7_A%S_<_2O5#I:_W:!IB
M_P!VG[!%?VI+N>6?\(H3_!^E'_"(G^Y^E>K+IJ_W:?\ V<O]VH=%$_VI+N>2
MGPD1_!^E-_X10_W/TKUHZ:O]VHSIB_W:/8HN.:2[GE/_  BA_N?I1_PB9_N?
MI7JW]F*/X:4:<O\ =JE00WFLNYY5_P (D?[GZ4?\(H1_!^E>K?V>O]VD.FK_
M ':KV"0+-9=SRK_A%C_<_2C_ (14_P!S]*]4_LQ?[M*-,7^[1[%#_M67<\J_
MX1,_W/TI?^$3/]S]*]6&FK_=I?[-7^[2]@B?[5EW/*?^$3/]S]*/^$4/]S]*
M]6_LU?[M)_9J_P!VE[%!_:TNYY3_ ,(F?[GZ4G_")G^Y7J_]FK_=H_LU?[M+
MV"#^U9=SRC_A$S_<_2E_X10_W/TKU;^S5_NT?V:O]VE[$?\ :LNYY3_PBA_N
M?I2?\(F?[GZ5ZO\ V:O]VC^S5_NT>Q#^U9=SRC_A$S_<I?\ A$S_ '/TKU;^
MS5_NT?V:O]VG[!"_M67<\J_X10_W/TI/^$4/]S]*]6_LU?[M']FK_=I^Q0_[
M6EW/*/\ A$S_ '/TH_X1,_W/TKU?^S5_NT?V:O\ =I>P0O[5EW/*?^$4/]S]
M*/\ A%3_ '/TKU;^S5_NT?V:O]VE[$?]K2[GE/\ PBA_N?I2?\(F?[GZ5ZO_
M &:O]VC^S5_NT>P%_:LNYY3_ ,(F?[GZ4O\ PBA_N?I7JO\ 9J_W:/[-7^[3
M]@@_M67<\J_X10_W/TI/^$3/]S]*]6_LU?[M']FK_=H]@@_M67<\H_X1,_W/
MTI?^$4/]S]*]6_LU?[M']FK_ ':7L _M67<\I_X14_W/TH_X10_W/TKU;^S5
M_NT?V:O]VCV(_P"UI=SRC_A$S_<_2C_A$S_<_2O5_P"S5_NT?V:O]VG[!"_M
M67<\I_X10_W/TI?^$4/]S]*]5_LU?[M']FK_ ':?L4/^UI=SRG_A$S_<_2D_
MX1,_W*]7_LU?[M']FK_=I>P0O[5EW/*/^$3/]S]*7_A%#_<_2O5O[-7^[1_9
MJ_W:7L06:R[GE/\ PBA_N?I2?\(F?[GZ5ZO_ &:O]VC^S5_NT>Q'_:LNYY1_
MPB9_N4O_  B9_N?I7JW]FK_=H_LU?[M/V"%_:LNYY5_PBA_N?I2?\(H?[GZ5
MZM_9J_W:/[-7^[3]BA_VM+N>4?\ ")G^Y^E'_")G^Y^E>K_V:O\ =H_LU?[M
M+V"%_:LNYY3_ ,(H?[GZ4?\ "*G^Y^E>K?V:O]VC^S5_NTO8C_M:7<\I_P"$
M4/\ <_2D_P"$3/\ <_2O5_[-7^[1_9J_W:/8"_M67<\H_P"$3/\ <_2E_P"$
M4/\ <_2O5O[-7^[1_9J_W:'0'_:TNYY3_P (H?[GZ4G_  B9_N?I7J_]FK_=
MH_LU?[M)4 _M:7<\H_X1,_W*7_A$S_<_2O5O[-7^[1_9J_W:KV"%_:LNYY3_
M ,(H?[GZ4?\ "*'^Y^E>K?V:O]VC^S5_NTO8C_M:7<\H_P"$3/\ <_2C_A$S
M_<_2O5_[-7^[1_9J_P!VG[!"_M67<\I_X1,_W/TI?^$4/]S]*]5_LU?[HH_L
MU?[M/V*'_:TNYY3_ ,(F?[GZ4G_")G^Y^E>K_P!FK_=H_LU?[M+V"%_:LNYY
M1_PB9_N?I2_\(J?[GZ5ZM_9J_P!VC^S5_NTO8!_:LNYY3_PBA_N?I2'PF?[G
MZ5ZO_9J_W:/[-7^[0J(_[6EW/)_^$2/]S]*4>$S_ '/TKUC^S5_NTG]FK_=I
M^P0O[5EW/*O^$4/]S]*3_A%#_<_2O5O[-7^[1_9J_P!VG[%#_M:7<\H_X1,_
MW/TH_P"$3/\ <_2O5_[-7^[1_9J_W:7L$+^U9=SRG_A%#_<_2D/A0_W/TKU;
M^S5_NT?V8O\ =H]@B7F<GU/)SX2)_@_2A?")S]S]*]8_LU?[M*--7^[5JD8R
MS!OJ>=6?ADQD?+^E=%9:/Y>/EKJ4L%'\-6$M .U:*FCGEC&S,MK+:!Q6I!#M
MJ9(<=JG5,5HHI''4KN0L:X%2TT"G51RMA1110(**** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ I*6DH$Q**6BBXK!2TE,9P*FY20_-(6J!KE5
M[U5EOT7O1<T4&R\9 *C,PK&FU>)?XJHR:]"#]\5+F;QP[9T_GBCSA7*_\)!#
M_?'YTO\ PD$/]\5/,B_JK.I\\4?:!ZURI\00_P!\4W^WX?[XHYTBEA)/H=9]
MH%+YPKDAK\7]^I5U^'^^*?M$#P<ET.I\T4>:*YH:_!_?%!U^'^^*?.B/JLNQ
MTGG"D\X5S7]O0_WQ2?V]#_?%/G0_JLNQTOFTGF5SHUZ#^^*7^WH/[X_.CVB#
MZM+L=&)*7S17.?V]!_?%']O0_P!\4O:(7U:78Z,R4W?6 ->@_OBE_MV#^^*7
MM$'U>2Z&]OI1)6!_;L']\4TZ]!_?%+VB#ZO)]#HO-%(9:YS^WH?[XH_MZ#^^
M*:J(/JTNQT/F4HDKGO[=@_OC\Z3^WH/[XI^T0_J\NQT@E%'FBN;_ +>@_OBE
M&O0?WQ4^U0OJTNQT6^C?6 ->@_OBE_MV#^^*M54+ZO+L;X>E\P5SIUZ#^^*;
M_;T/]\?G0ZB#ZM+L=&9*:6KGQKT']\4[^W[?^^*7.@^KR70WMU*)*P/[?M_[
MXI#KT']\4<R#V$GT.B\P4>:*YO\ MZ'^^*/[?A_OBCG0_JTNQTGF"CS17-_V
M_#_?%-.OP_WQ^='.@^JR['2^<*0S"N9.OP_WQ^=']OP_WQ3YD/ZK+L=(9*3S
M*YT:_!_?%+_;\']\4N9!]7EV.C$E.\T5S7]OP?WQ0->A_OBCG0GAY=CIO,%+
MNKGTUN%OXQ5J/58F_BJU(S=%HV :<#6<E_&W>K*7"MWJKF3BT6:0TBN#3LTK
MD#,4H%.HQ3N%PI:**0@HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****5@$Q2;!3J*+
M,\L>E'EKZ4^BBR'=C/+7TH\M?2G9HS3"[&>4OI1Y2^E24E 78SRQZ4GECTJ3
M-)FI:'=C-@]*-B^E*32;J6P]1/+7TIOECTI^:6FF.[(_*'I2B,>E24F:H.9B
M>6OI1Y:^E&:7-(5V)Y8]*7RQ3LT9% KL;Y8]*7RU]*=FC- 78SRU]*/+%/S1
MF@+L9Y8]*7RU]*=2TQ78SRU]*3RQZ5)24!=C/+%'EKZ4[(I<B@=V-\M?2CRU
M]*=FC- 78SRQ1Y8IV11F@+L3RU]*/+7TIV:,T6%=C/+7TH\L4_-)D4#NQOEC
MTI?+7TI<BES0%V-\M?2D\L>E/S29% 78WRQ1Y:^E.R*7- 78WRU]*/+7TIV:
M,T6%=C/+%'EBG9HR*!W8WRU]*7RU]*=FC- 78SRU]*/+%/S29% 78WRQ2^6O
MI3LT9HL%V-\M?2D\L>E/S1FBP78SRQ1Y:^E.R*7- 78WRU]*/+7TIV:,T!=C
M/+%'EBG9%&: NQOEKZ4OEKZ4[-&:+"NQGEKZ4>6M/S29H'=C?+7TH\L>E.S2
MYI!=C?+'I2>6OI3\TF: NQOEKZ4>6/2G9%&: NQ/+'I2>6/2GYHS0%V,\L4>
M6M.S1D4!=C?+'I2^6/2G9HS0%V,\L>E'EKZ4[-&10%V-\M:7RU]*=1FF*[&^
M6OI2>6OI4E)0%V,\M:/+7TI^:*!W8WRU]*/+7TI])FBPKL9Y8H\L4^C-(=V,
M\L>E'EKZ4^EIV%=D?EKZ4>6/2GTF10.[&^6*=M%&12T"NPP*,4M% @HHI* #
M-&:2BF3<=124M(=PHHHH&%%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %-I
MU)BD)C:6EQ1BBPK#3TJC<2%0:O-TK.NAP:3-Z2NS(N[MESS7/7^IR*#R:VKU
M>M<QJ*\&L)-GLX>BF86H:Y*F?F-<U=>(YPWWC^=:&J)UKE+R/YZPE)GJTL(F
M7SXEGS]X_G2CQ+<?WC^=8@BYJ18*R<V=]/ I]#9'B2?^\?SIX\1S_P!X_G6-
MY%'E5FZC.N& CV-O_A(I_P"\?SH_X22?^\?SK$\NE\JI]JS7ZA%]#:_X26?^
M\?SI1XEG_O'\ZQ/)H\JG[5D/+H]C<_X22?\ O'\Z/^$DG_O'\ZP_+H\NE[5D
M_P!G1[&W_P )+/\ WC^=)_PDT_\ >-8GE4>53]HQ_P!GQ[&Z/$T_]X_G3O\
MA)9_[Q_.L#RZ-E)U6+^SH]CH/^$FG_O'\Z/^$FG_ +Q_.N?V4;*7M6+^S8]C
MH/\ A)Y_[Q_.D_X2:?\ O'\ZP-E&RCVK#^S8]C?_ .$EG_O'\Z/^$EG_ +Q_
M.L#93A'2]LP_LZ/8W?\ A)9_[Q_.C_A)9_[Q_.L/RZ0QTO;,/[.CV-W_ (26
M?^\?SH_X26?^\?SK!*4!*?M6/^SH]C?_ .$FG_O'\Z/^$FG_ +Q_.L,14OE4
M>V8O[-CV-O\ X2:?^\?SI/\ A)9_[Q_.L,QTW91[9C_LV/8W#XFG_O'\Z:?$
M]Q_>/YUB^5FG>1FG[9B_LV/8V!XGN/[Q_.G#Q-/_ 'C^=8OD4TQ8H]NP_LV/
M8WO^$EG_ +Q_.D_X26?^\?SK!V4\19IJLQ_V='L;)\2W']X_G2?\)+/_ 'C^
M=9/D"D, J_;#_LZ/8UO^$EG_ +Q_.D_X26?^\?SK',--\FI]LQ_V?'L;7_"3
M7']X_G2?\)-<?WC^=9'D4A@I>V9#R^/8V/\ A)Y_[Q_.GQ^)I\_>/YUS[18H
M1/F%:1K')4P45T.UM/$,S$?,?SK?L]9E;')KAK"/D5U6GP]*Z85#S*V&2.OL
M]1D;')KH;.Z=L5S-A".*Z>QBX%=$97/'KP439@<E15I2:@@C^45:"U9YTFKB
MBEHHHN9BT4E%.XA:***H HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** $HI:*FP!1115 %%%% !1110 4444 %%%%)@)29I:2
ME88A-1M.J]323-M!KF]4U!H0V#TIE)7.@:_B7JPJ,ZI!_?'YUY1JOBB6 MAC
M7,R^-Y@Y&\U+G8WAAW(]Z.J0?WQ^=-_M.'^^*\(3QM*?XS5A?&4A'WS6,JIV
M4\OE(]N_M.'^^*/[3A_OBO$3XRD_OFFGQG)_?-9^V1T+*9L]Q_M.'^^*/[3A
M_OC\Z\-_X327^^:/^$TE_OFFJZ*_L>H>Y_VG#_?%']IP?WQ7AG_":2_WS2?\
M)K+_ 'S5+$(7]CU#W3^TX/[XH_M.'^^*\*_X367^^:7_ (367^^:KZQ$7]D5
M#W3^TX?[X_.C^U(?[X_.O#/^$TE_OFC_ (327^^:GZPA_P!CU#W/^U(?[X_.
MC^U(?[XKPS_A-)?[YH_X327^^:7UA!_8U0]S_M2'^^/SI?[3A_OBO#/^$TE_
MOFE_X323^^:/K"*_L6H>Z#4X?[XIW]IP?WQ7A/\ PFLO]\T?\)M+_?-/ZPB7
MDM0]V.IP?WQ3#J</]\5X9_PFTO\ ?-'_  FDI_C-'UE LEJ'N/\ :</]\4?V
MI#_?'YUX=_PF<G]\TA\:2?WS2^LHK^QJA[E_:D/]\4?VI#_?'YUX9_PFDO\
M?-+_ ,)I+_?-'UA"_L:H>Y?VG#_?%']J0_WQ7AW_  F<G]\T?\)G)_?-'UE#
M_L6H>Y?VI#_?%']J0_WQ7AG_  FDO]\TG_":R_WS5?68D_V-4/=/[3A_OBD_
MM.'^^*\-_P"$TE_OFE_X3.3^^:3Q*&LEJ'N/]J0_WQ^=']J0_P!\5X=_PF<G
M]\TW_A-)?[YI?6$']C5#W/\ M2'^^*/[4A_OC\Z\,_X327^^:=_PF<G]\T?6
M4"R:H>X_VG#_ 'Q2_P!IP_WQ7AO_  F<G]\TG_":2?WS36)0/):A[G_:D/\
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH 0U"\8/:IZ0B@:=C.FME(Z5SNK6JA3Q77NH(K#U2W+J<"LY1.J
MC5:9Y/KL84MQ7 Z@V)#7JFN:5+(6PM<'?^'[AI#A#^5<E2!]%A,4DM6<R).:
MG1ZT!X=N<_</Y5.OAZX_NG\JYW!GM4L=%=3,$E+YM:AT"X_NG\J8=!N/[I_*
MH]FSJ6/AW,[S11YHJ_\ V%<?W3^5+_85Q_=/Y4N1E+'0[E 2TX2BKW]A7']T
M_E2_V%<_W3^5'(Q_7H=RF)A09A5S^PKG^Z?RH_L*Y_NG\JGV3&L=#N4?-I/-
MK0_L*X_NG\J7^PKC^Z?RH]DR_KT.Y0$HI?.%7?["N/[I_*D_L*Y_NG\J/9,E
MXZ'<I&44GF"K_P#85S_=/Y4?V%<?W3^5'LF-8Z'<SO,I?-%:']A7']T_E2?V
M%<?W3^5"IL'CH=S/\T4>:*T/[!N?[I_*E_L*X_NG\J?LV"Q\.YG^92B45?\
M["N/[I_*C^PKC^Z?RI>R8WCH=REYPH\X5<_L*Y_NG\J7^PKG^Z?RH]DR/KT.
MY0,HI/,K0_L*X_NG\J/["N/[I_*E[)E+'0[F?YHH\T5?.A7']T_E1_8-S_=/
MY52IL/K\.Y0\T4GF5H?V%<_W3^5+_85Q_=/Y4O9,%CH=R@):42BKW]A7']T_
ME1_85S_=/Y4>R8/'0[E+SA2&45>_L*Y_NG\J/["N/[I_*CV3$L=#N9_F4>96
MA_85Q_=/Y4?V%<?W3^5'LF5]>AW,_P T4>:*O_V#<_W3^5']@W/]T_E3]FR?
MK\.Y0\V@25H?V%<?W3^5']A7']T_E2]DROKT.Y1$HI?.%7?["N/[I_*C^PKG
M^Z?RH]DR7CH=RD9133(*O_V%<_W3^5']A7']T_E1[)C6.AW,_P RD\T5H_V%
M<?W3^5)_85Q_=/Y4*FP>.AW*'FBCS:O_ -@W/]T_E0-"N/[I_*G[-B^OP[E#
MS:<)15[^PKC^Z?RH_L*X_NG\J/9L?UZ'<I><*/.%7?["N?[I_*C^PKG^Z?RH
M]DR?KT.Y1,HI/,K0_L*X_NG\J/[#N/[I_*FJ3*^O0[F=Y@H\T5H'0KC^Z?RI
M/[!N?[I_*CV;%]?AW*'FBD\RM#^P;G^Z?RI?["N/[I_*I=)C6/AW,\2TX2BK
MW]A7']T_E1_85S_=/Y4>R8/'0[E+SA2&45=_L*Y_NG\J7^PKC^Z?RH]DQ+'0
M[F?YE*)15_\ L*X_NG\J/["N/[I_*E[)E?7H=REYPH,PJ[_85S_=/Y4G]A7/
M]T_E3]DR'CH=R@913?-K1_L*X_NG\J3^PKC^Z?RI^R8OKT.Y1$HIXF%7/["N
M/[I_*C^PKG^Z?RI>R8_KT.Y3\X4TRBKW]A7/]TTO]@W/]T_E5*DP^OP[E#S1
M2^<*O?V#<_W32?V%<_W33=)A]?AW*?G"FF85>_L*Y_NFC^P;G^Z?RJ/9,/KT
M.YG>;2B6M#^P;G^Z?RH_L&Y_NG\J/9,/KT.Y2$PI?.%7/[!N?[I_*C^PKG^Z
M?RH]DP>.AW*)D%1L]:G]A7']T_E0=!N,?=/Y52ILPEC8=S$=Z6.3YJU&\/W'
M]T_E1'X>N=P^4_E6L8,Y*F+CW-#2FR5KO-)R0M<KI>BSH5RI_*NZTJP= N17
M5"+/)Q&(BS?M <"M>$=*IVL!"CBM&-,5T11XM::99CZ5,*B08J45I8X9$@I:
M:#2YH,V+1110(**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH :W2LZZ[UH-TK.NCP:F1O1W,*\/6N:U$\&NBO3UKF=0/6N.9]%A4<EJ?
M>N7N_OUU&I=ZYBZ^\:Y9,]ZA$J#K4RU#WIX-8,].G$GHJ,&G"LVCLBA:**0U
M%C4.*0TF:*!V"@&BB@KE'"EXIF:-U*PAQI*3-%!:"BDI*87%I***!"TX4VES
M3$T28%! J/=1NH!#J3O29HI%"T4E&:JXQ:*2BE<!PI>*9FC=4DL>0*8:-U)F
MG804X4VES0%AXQ2&FYHS2L(,T9I*6F.PX4'%-S2$T6$T,:A.HI&-"?>%:Q.*
MML;5AU%=5I_:N4L>HKJ-//2NF#/ QB.ML,<5TMCVKE[ ]*Z>Q/ KLIL^8Q2-
MZ#[HJQ5:#[HJQ72CQY;BT4E%5<D6BBBF 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %)2T4 --02P"0<U8Q1B@:=C'GTB.7JH_*J$GAF!SR@_*NG
MQ28J'&YHJLEL<I_PBUO_ '!^5'_",0#^ ?E75$4W J.1&BQ$^YRI\,P?W!^5
M1-X8A_N#\JZXJ*;L%+D1HL54[G(?\(Q#_<'Y4?\ ",P_W!^5==Y:TFQ:?(B_
MK<^YR?\ PC,/]P?E3AX9@_N#\JZG:M&U:.1!];J=SF!X8@_N#\J#X9@_N#\J
MZC HP*.5"^M5.YRQ\,P?W!^5-_X1J#^X/RKJ]HI-HJN2(_K=3N<N/#,']P?E
M2_\ ",P?W!^5=1M%+@4N2(OK53N<J?#,']P?E3?^$:A_N#\JZO:*38*/9H:Q
M=3N<J/#4/]P?E3AX9@_N#\JZC:*7:*/9H'BZG<Y?_A&(/[@_*D_X1F#^X/RK
MJL"DVBCD0OK53N<I_P (U!_<'Y4H\,P?W!^5=3M%+M%/DB/ZW4[G+_\ ",P?
MW!^5!\,P?W!^5=3M%&T4N1"^M5.YRA\,P?W!^5)_PC4/]P?E75[12;!2]FA_
M6ZG<Y<>&8/[@_*G?\(Q!_<'Y5T^T4N!3]FA/%U.YRQ\,P?W!^5-/AF'^X/RK
MJ]HHV"GR1!8NHNIRG_",P_W!^5+_ ,(S!_<'Y5U6P4;11R1#ZW4[G+?\(Q!_
M<'Y4A\,P?W!^5=5@4FT4O9H%BZG<Y3_A&H?[@_*E'AF#^X/RKJ=@I=HH]FA_
M6ZG<Y<>&8/[@_*C_ (1B#^X/RKJ<"C HY$+ZU4[G*GPS!_<'Y4W_ (1F'^X/
MRKK-HHV"GR1']<J=SE1X9A_N#\J7_A&8/[@_*NIVK1@4N2(OK=3N<J?#,']P
M?E33X9A_N#\JZO:*-@H]FAK%U.YR@\-0_P!P?E3AX9@_N#\JZG8*-HH]F@>+
MJ=SF/^$8@_N#\J:?#,']P?E758%)M%-00OK53N<K_P (S#_<'Y4#PS#_ '!^
M5=5L%&T4_9Q'];J=SEQX9@_N#\J#X9@_N#\JZG HP*GD0OK53N<K_P (S!_<
M'Y4W_A&H?[@_*NKVBC8*KD0_K=3N<L/#,']P?E3O^$9@_N#\JZ?:*7 I."%]
M:J=SECX8@_N#\J:?#,/]P?E75X%&Q:.2(?6ZBZG*?\(S#_<'Y4H\,P?W!^5=
M7L6DVBCDB'UNIW.6_P"$8@_N#\J0^&8/[@_*NJP*3:*7LT"Q53N<I_PC4/\
M<'Y4#PS#_<'Y5U6T4NT4O9H?UNIW.7'AF#^X/RH_X1F#^X/RKJ=HHP*?(A?6
MJG<Y0^&8/[@_*D_X1F#^X/RKJ]HI-HI\D1_6ZG<Y8>&8/[@_*G#PS!_<'Y5U
M&T4NT4<D1?6JG<Y?_A&(/[@_*C_A&8/[@_*NHP*,"ER(7UJIW.7_ .$9@_N#
M\J/^$9@_N#\JZC HVBCD0?6JG<Y?_A&8/[@_*C_A&8/[@_*NHP*,"CD0_K53
MN<O_ ,(S!_<'Y4?\(S!_<'Y5U&!1@4<B#ZU4[G+_ /",P?W!^5'_  C,']P?
ME748%&T4<B#ZU4[G+_\ ",P?W1^5'_",P?W!^5=/M%&!1R(7UFIW.8_X1B _
MP#\J<OA>WS]P?E73<4<52BB77F^IAQ>'X8^BC\JNQ::D?05HC%. %.R,W5D5
MUMPO:I1'BI,"BJ2(<FQ ***6F2)2TNVEQ4BN I11BEIB"BBB@04444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "HGJ6F,*EC14D%95\#L-;3K
M69?I^[-2T=5*=F<%K)P&KS_59 &;FO0-=1L-@5YOJZ2;FP#7/-'NX2JC)>3Y
MNM-#9J$QRENAJ>."0]C7-*-SW*.(2'"I!BE%N_H:0PR#^$UBZ;/0ABD.R*0L
M*C,<OH:;Y<GH:SY&="Q,1Y>@/4?E2>AH\J3T-'(Q?68DX84NX5!Y<GH:<(Y/
M0U/LV/ZS$>6IF:<(9/0TOD/Z&CE#ZS$:#2Y%!@D_NFF&*3T-/D;)^LH?D4A-
M((I/0TX02>AHY&'UE#0U/#4>0_H:0PR#L:.4?UF))N%-+"H_+E]#2B*0]C3Y
M ^LQ FDS3Q!)Z&@P2?W32Y6'UF(@(HR*:89/0TGE2?W31R,7UA#RU-W4HAD]
M#3O(?^Z:.5C6)0@:GAA3##)Z&FF*3T-+D;']9B2EA3"U-$4GH:<(9#V-'(T'
MUF(W=3@U+]G?^Z::89/0T^43Q*';A2%J9Y4G]TTHAD_NFCD8OK"%W4!J402?
MW32^1)Z&ERC^LH4-2[A49BD]#2>7)Z&CV;']9B/+4W=0(9#V-.\A_0T<K0?6
M4-W4[=2&"3T--,,G]TT^1LGZRA^ZFEJ;Y4G]TTH@D]#1R,/K*0;Z<'I/(D]#
M2&&3T-'*P^M18_>*"]1>5)Z&E\J3^Z:7*P^L1%WT;Z/(D_NFE\B3^Z:?*'UJ
M(H:EW"F>3)Z&D\J3^Z:/9A]90\M3=U AD]#2^1)Z&CD8?6H@&IP84TPR?W33
M?*D]#2Y6'UF+)-PII:F>5)Z&G"&3^Z:.4/K,4&ZE#4>1)_=-)Y,GH:?*'UJ(
M_<*0M3/*D_NFCRI/0T>S8?6$+NHW4OD2>AH\B3T-'*P^M1%#4NX4PPR>AIOE
M2?W32Y&'UB)(6INZD$,GH:=Y$G]TT^4/K,4 :G!J9Y$G]TTGE2?W31R,/K,6
M2;A32U-\J3^Z:40R>AHY&'UF(;J<&H\B3T--,,GH:.5A]:B/W"D+4SRI/[IH
M\F3^Z:/9L/K" M3=U/\ (D_NFC[/)_=--1)>)0W=2$T[[/)_=--,$G]TU:@8
MRQ*(F:A&^:E:WD_NFECMI-WW3^5;QB<=2NF;NFMR*[72SPM<9IL#@KP:[72X
MF 7@UT11YE>JCJK/H*VK;/%8]DAP.*W;9.E;Q/&Q$T7XLXJPN:9$G%3A:V1Y
M4Y:@!3L48I:#-L****!!1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %)BEHH C<<5G70X-:;=*S;KH:F1T4=S O#UKF=0;@UTM[WKF-0[URS
M/HL(CE-2/6N8NOO5TNI=37-77WJXYGOX<J \T]6I@'-2JE8,]2F.#4O6DVXI
M>E9LZXBXIII=U'6D:W&$TF:?MI-M TQ***2D5<6BBEHL,2BBBD 4F:6DQ0)A
MFBDHH$.S2YIM+B@&Q=U)FEVT;:6A(VBG8I*95@S1NI,4F*!6'YI,TVEHL-"T
M4"G8I#N-HI^VDQ1<8VBBBF M%)11< HI,T4"N+333J"*:9+9"U*GWA2LM*B_
M-6D6<-9Z&O8GD5T]@W2N:L5Y%=-8)TKI@?/8PZBP?I746!X%<Q8)TKI[$8 K
MLIGS.*-Z#[HJQ5>#[HJQ72CR);A2TF*6F2%%%%4 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% "4AIU)BIL!&15.YBW*:OXJ-TR*+&D96..U
M+3/-!XKDK[PV)"?DKU.6U#=JHR::&_AK*4;GH4<0HGDQ\+#/W/TJ1?#('\%>
MGG21_=I/[)']VH]F=L<<D>;#PV/[E+_PC(/\'Z5Z3_90_NTO]EC^[0Z9I_:*
M74\T_P"$6']S]*0^%Q_<_2O3O[,'I2'3!_=J/9(:S)]SS ^&!_<H_P"$8']S
M]*]-_LH?W:7^RA_=H]B/^T_,\R'A<?W/TIW_  BX_N5Z9_98_NT[^RQ_=J?8
MD_VGYGF/_",@?P?I1_PC8_N?I7IATH?W:;_90_NT_8%+,_,\U_X1H'^#]*/^
M$7']RO2QI0_NTX:6/[M+V(GF?F>9?\(N!_!^E'_"- ?P5Z:=+']VF_V4/[M'
ML 69^9YI_P (V/[GZ4?\(R#_  ?I7I7]E#^[2C2Q_=I^P'_:?F>:?\(N/[GZ
M4?\ ", ?P5Z9_9@_NT'3!_=I>P%_:7F>9_\ "-#^Y^E'_"- _P %>E?V4/[M
M TL?W:?L!_VEYGFO_", _P %+_PBX_N?I7I8TP?W:7^S!_=I^Q%_:3[GF7_"
M,@?P4?\ "-C^Y^E>F'2Q_=IO]E#^[1[ :S/S/-?^$:!_@_2C_A%P?X/TKTO^
MRQ_=I?[,']VI]@)YEYGF?_"+@?P?I1_PC0'\'Z5Z9_9@_NTG]EC^[1[ %F7F
M>:?\(V/[GZ4?\(R#_!7I7]E#^[2C2Q_=JO8#_M/S/-/^$6']S]*/^$8 _@KT
MW^S!_=I#I@_NT>Q%_:3[GF?_  C0'\%'_"-C^Y^E>E'2A_=H_LH?W:7L!_VG
MYGFO_", _P 'Z4?\(N/[GZ5Z7_98_NTO]F#^[2]B+^TO,\S_ .$9 _@_2C_A
M&Q_<_2O2_P"RQ_=I/[*']VG[ :S+S/-?^$:!_@H_X1<'^"O2_P"RQ_=I?[,'
M]VG[ 3S+S/,_^$7']S]*3_A&0/X/TKT[^S!_=IO]EC^[1[$/[2\SS+_A&A_<
M_2E_X1D'^#]*]+_LH?W:4:6/[M+V ?VEYGFG_"+C^Y^E'_"+C^Y7I@TP?W:7
M^S!_=I>P%_:3[GFG_",#^Y^E'_",#^Y^E>E_V8/[M']F#^[1[ /[2\SS/_A%
MQ_<_2D_X1<?W/TKTW^S!_=H_LP?W:/8,/[2\SS'_ (1D#^"D_P"$:']S]*]-
M_LL?W:3^RA_=I^P'_:7F>:?\(R/[GZ4?\(N#_!^E>E_V4/[M.&F#^[1[ /[2
M\SS/_A%A_<I?^$8']S]*],_LP?W:/[,']VE[ 7]I/N>:?\(P/[GZ4G_"+C^Y
M^E>F_P!F#^[2?V8/[M'L _M+S/,O^$6']S]*3_A& /X*]._LP?W:0Z6/[M'L
M _M+S/,O^$:']S]*3_A&A_<_2O3/[*']VC^RA_=I^P'_ &EYGFG_  C /\'Z
M4O\ PBP_N5Z7_98_NT[^S!_=I>P#^TO,\S_X1<?W*7_A&!_<_2O2_P"S!_=H
M_LP?W:/8"_M+S/-/^$8']S]*3_A%A_<_2O3?[,']VC^S!_=IJB+^TGW/,?\
MA%Q_<_2D_P"$9']S]*]._LP?W::=+']VG[ ?]I>9YG_PC0_N4?\ ",C^Y7I?
M]E#^[2_V6/[M+V _[2\SS3_A%Q_<_2E_X1<?W/TKTL:8/[M+_9@_NU/LA?VD
M^YYI_P (P/[E+_PC _N5Z5_9@_NTO]F#^[3]@)YEYGFO_"+@_P 'Z4G_  BH
M_N?I7IG]FC^[2_V</2FJ+)>8>9Y@?"@_N?I2IX5 /W*]._LT?W:!IH_NU:IL
MAXXX.T\.!"/EK?M-("8^6NB2P [592V"]JUC YJF*N9T%EM XK0BAVU86+%2
M!*UL<4ZK8(,"I :0+2XH,&+1113)$S29IV*3%(G43-%+BBEJ&HZBBBJ*"BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M[:N/[Q_.J.RCRZ7M6+ZA#L7O[:N/[Q_.G#6KC^\?SK.\NC93]JQ?48+H:/\
M;5Q_>-(=;N/[YK/V4>71[5C^HP?0O?VW<?WC^=*-;N/[QJAY=+Y=+VK#ZA#L
M: UJX_O&E_MJX_O&L_RZ-E/VK']1AV-#^V[C^\:3^V[C^^:S]E&RE[1A]1AV
M-'^VKC^\:3^VI_[QK.V4;*:JL7U*'8T#K5Q_?-)_;=Q_>-4-E'ET>U8?48/H
M7_[;N/[YI1K5Q_>-9_ET;*/:L/J,%T-'^VI_[QI#K5Q_>/YUG[*-E'M6'U&'
M8O\ ]M7']XTO]M7']X_G6?LHV4O:L7U"'8T?[:G_ +Q_.C^VKC^\:SME&RG[
M5A]2AV+_ /;=Q_?-)_;=Q_>/YU1\NCRZ/:L?U"'8T!K=Q_>-._MJ?^\:S?+H
MV4>U8OJ,%T-'^VKC^\:3^VKC^\:S]E&RCVK*6"AV-#^VKC^\:7^VKC^\:S]E
M+LI>U8_J,.QH?VU/_>-)_;5Q_>-4-E)LI^U8OJ,.Q?\ [:N/[QH_MJX_O&J'
MET;*7M&/ZC#L:/\ ;5Q_>-']M7']XUG[*-E/VK%]1AV+W]M7']XT?VU<?WC5
M#91Y=+VC']1AV+_]M7']XTO]M7']XUG[*/+]J7M&'U&'8T/[:N/[YI/[:N/[
MQJALH\NCVC#ZC#L7_P"VKC^\:7^VKC^\:S_+I=E/VK#ZC#L:']M3_P!XTG]M
M7']XU0V4FRG[5B^HP[%_^VKC^\:/[:N/[QJAY=&RE[1C^HP[&C_;5Q_>-']M
M3_WC6=LI=E/VS%]1AV+W]M7']XT?VU<?WC5#91Y=+VK']1AV-#^VKC^\:7^V
MKC^\:SME+LI^U8OJ,.Q?_MJX_O&D_MJX_O&J.RD\NE[5C^HP[%[^VKC^\:7^
MVKC^\:H>71Y=-56'U&'8O_VU<?WC^=']M7']XU0\NCRZ/:L/J,.Q>_MJX_O&
MC^VKC^\:H^71Y=+VK#ZC#L7O[9N/[QH_MFX_O&J/ET>75*LP>!AV+O\ ;5Q_
M>--.M7']XU3\NFF.J55F,\%#L7#K=Q_>-*FMSY^^:S&CI$0[JM39P5<)%=#K
M;'5YF(^8UU6GZA*V,FN%TY#D5V6F)]VM8R9YE6C%'865R[ <UT%I(2!7.6*\
M"NAM!TKI@>+B8I&U"<BK%583\M60:Z4CQYK4=124M!F%%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %(:6DH&1N>*S;H\&M)QQ69=]#
M6<]CHH;F!>]ZYK4.]=%?-UKF=0;K7#49]'A%H<MJ/>N:NOO5T>H'K7.7/WJY
M97/>H%4#FI56H@>:D#5B[GITR0**7%-#4[-0TSKB%&***FQK<3;28IU)1J%Q
MN**=13L5S!BEQ11FD+F&D4E.HQ3L/F$Q2XHI:3%S"8I,4[-)0@YAM+BEQ13!
ML-M)MIU%+45QF*6EQ13L5S !2XI,T;J5F*X$4VG=:,4TA\PREI<4E4D.X444
MN*=A7&T8I^*3%*P<R&XHQ2T4PN@I<4N*7%,.9"8I"M+2$U)+(F%(GWJ<:5!\
MU:Q.&LS5L>HKJ+#M7,6?!%=)8MTKJ@KG@XMG5V':NGL>U<I8/TKJ; Y KLA$
M^:Q1OP?=%6*KP#Y15D#BN@\>6XF*7%+2T7(N)2T44Q!1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 444E "/TK#U1]J&MJ0_+7/ZN?D-3(VI?$<#K
MMT5W<UP&HWY\PC-=AXA)RU>=:B6\TUR5$?3X)JPINBQZTH;=6<A;/2K4;'TK
MEDF>[2E$M!13@HJ$.:/,-<\HL[(U(HGP*:14?F&E!)[5ERLU5>([%*!3>?2C
M)%"3-%71)L%&P5%YA%)YIJN5FBKQ)"!28J+S#2;S1RLOV\2;BEP*AWFC>::B
M'UB)+Q146\TF\T.+#ZQ$G %+M%0"0TOFFERL3KQ)]@I"HJ+S32>8:?*Q*O$E
MP*4"H-YI?,-/E*^L1+&T4%14'FFCS34\K%[=$A I,"HC(:3>:.5C]O$L!12[
M!4 D-+YIHY6)UXDQ04W J(RFCS#3Y05>)* *=M%5_,-+YIHY0=>)8V"FE14/
MG&D\TTN5B5:)+@4N*@WFE$AHY65[>)8""C8*A$IH\TT^5D^WB2E128%1>8:3
M>:?*/V\2<**=L%5_--'G&ERB]O$F*BD(%1>::;YAI<K&J\2< 4X**KAS2B4T
M<K&\1$L;:0J*A\TTGFFGRL7MXDN!2@"H-YH\PT^4/K$2R%%!456\XT><:7*Q
M?6(DY IN!4/F$T;S2Y64L1$L!13MM5Q(:7S31RL7MXDY44T@5%YII/,--1#Z
MQ$E IP457\PT><13Y0>(B6=HI"!5?SS2>:34\K$L1$FQ2@"H-YI1(:.5E?6(
MED+1M%0>::/--'*Q>W1*0*3 J+S#2;S5<H?6(DX IVT56\TBCSS2Y&)XB)9*
MBFD"H/.-'F&CE!8B)-@4X**K[S3A*:.4?UB)/MI"HJ'S32&4T<K#VZ)<"E %
M0;S1YAI\H?6(ED**7:*J^<://-/E)>(1.5%-(%1>:32;S5*)C+$1'E :?'"-
MPJN92*='.=U6HLX:M>+.AL(@"*ZS3EQBN.T^8DBNMTYR0*Z((\FO41UMET%;
MUIVKGK(\"N@M#TKKIGAXF29LP]*L#I5:'[M6170>-/<=2TE+2,PHHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HI,T9H :W2LR[7@UJ
M-TK.NNAJ9(WHNS.:ODZUS&H1]:ZZ\ YKF=2Q@UR3@CZ#"U+'%ZB,9KF[H_-7
M2ZHV,UREW)\]<\H(]RA51&#S3P*JB49J9916+@>G3K(GQ2YJ'SA2&85FXG7&
MM$L T[K503"GB<5'*R_;1+&**B^T"FF<4<C#VT27-&:KF84"84<C#VT2U1BH
M!.*=YXHY&'MHDM)FH3.*;YPJE /;(L4N*KB84X3BDX,/;(FQ25$9Q33,*%!A
M[9$^:456\X4X3BJY ]LBQMI,5'YXIIG%+V8>V1+FC-5S,*!,*?('MD6,9HVU
M$)Q3O/%+D#VZ'XQ29J,SBF&44^0/;(GS1BH!,*<)Q2Y1>V1-BEJ'SQ1YPHL+
MVZ)Z3%0^<*7SQ18%71)MHQ3//%-,XI697MD2YHS5<S"@3"JY6'M46<4TK48G
M%!G%3RL;K*PIXI4/S5 TPI$E&ZKBCAK54;UGR171V*9Q7+V,HR*ZG3Y1Q773
M1X6*JHZ?3X^E=38+P*YG3Y!Q746# @5V0/G,3.YO0#Y15CM5>#[HJS6QY4MQ
M**6BBQ(4444P"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ I*6B@"
M-QD5D:A;&13Q6T:ADC#=J31I"5F>;:OH;3;OEKCKWPD[N3LKVZ6S1NJBJ4FF
M1G^ ?E6;A<]*CBG$\1_X1!P?N&GCPHX_@KV4Z3'_ '!^51G24_N#\JR=([HY
MBT>0?\(N_P#<-)_PBS_W#7K_ /9"?W!^5)_9"?W!^59NB:?VD^YY$/"S_P!R
MGCPP_P#<KUO^R4_N#\J/[)3^X*S= ?\ :3[GD_\ PC+?W:0^%W/\%>L_V2G]
MP?E3AI2?W!^5'U<?]J-=3R(^%7_N4W_A%'_N5[#_ &4G]P?E1_92?W!^54J
M?VM+N>._\(J_]RC_ (19_P"Y7L!TE/[@_*D_LE/[@_*G[!%?VM+N>0?\(L_]
MRC_A%G_N5Z__ &2G]P?E1_9*?W!^5'U=!_:TNYY!_P (L_\ <H_X19_[E>O_
M -DI_<'Y4?V2G]P?E1[ /[6EW/(/^$6?^Y1_PBS_ -RO7_[)3^X/RH_LE/[@
M_*CV ?VM+N>0?\(L_P#<I/\ A%G_ +E>P?V2G]P?E2'24_N#\J3H!_:TNYY!
M_P (L_\ <H_X19_[E>O_ -DI_<'Y4?V2G]P?E1[ /[6EW/(?^$6?^Y1_PBS_
M -PUZ_\ V2G]P?E1_9*?W!^5/V ?VM+N>0?\(L_]PT?\(J_]RO7_ .R4_N#\
MJ!I*?W!^5'L$']K2[GD'_"*O_<I?^$4?^Y7L TE/[@_*E_LJ/^X/RI>P%_:T
MCQ[_ (11_P"Y2?\ "*O_ '*]B.E)_<'Y4W^R4_N#\J?L 6;2[GC_ /PBK_W*
M/^$4?^X:]@&DI_<'Y4X:4G]P?E1[ ?\ :TNYX[_PB;_W*/\ A%'_ +E>Q_V5
M'_<'Y4TZ2G]P?E2]@+^UY=SQ[_A%7_N4?\(J_P#<KV#^R4_N#\J!I*?W!^5/
MV _[6EW/(/\ A%'_ +E'_"*/_<KV$:4G]P?E0=*3^X/RI>P)_M:7<\=_X15_
M[E'_  BS_P!RO8#I*?W!^5)_9*?W!^5/V!7]K2[GD'_"*/\ W*/^$3?^Y^E>
MPC24_N#\J=_94?\ <'Y4O8"_M>7<\<_X11_[AH_X15_[E>Q'2H_[@_*FG24_
MN#\J?L 6;R[GC_\ PBS_ -RE_P"$4?\ N5Z__9*?W!^5.&E)_<'Y4>P!YM+N
M>/\ _"*/_<I/^$5?^Y7L/]E1_P!P?E2'24_N#\J7L 6;2[GCW_"*O_<I/^$5
M?^Y7L/\ 9*?W!^5 TE/[@_*G[ ?]K2[GCW_")O\ W*/^$3?^Y7L8TF/^X/RH
M_LF/^X/RI>P)_M:1XY_PBC_W*7_A%7_N5[ =)3^X/RI/[)3^X/RI^P&LVEW/
M(?\ A%7_ +E+_P (H_\ <KU\:2G]P?E2_P!E1_W!^5+V ?VM+N>/?\(H_P#<
MI/\ A%7_ +E>Q'2D_N#\J:=)3^X/RI^P!9M+N>/?\(J_]RC_ (1-_P"Y7L/]
MDI_<'Y4X:3'_ '!^5'L >;2[GC?_  B3_P!RE_X11_[E>R?V3'_<'Y4TZ3'_
M '!^5'L!+-I'CW_"*O\ W*/^$5?^Y7L']DI_<'Y4#24_N#\J/8%?VM+N>0?\
M(H_]RC_A%'_N5["-*3^X/RH_LI/[@_*E[ 7]K2/'O^$5?^Y2?\(J_P#<KV Z
M2G]P?E2?V2G]P?E3]@/^UI=SQ_\ X11_[E'_  B;_P!RO8AI*?W!^5+_ &5'
M_<'Y4>P)>;2/'/\ A$W_ +E'_"*O_<KV,Z3'_<'Y4TZ2G]P?E1[ %FTCQ_\
MX19_[E'_  BS_P!PUZ__ &2G]P?E1_9*?W!^5'U=%?VM+N>/_P#"+/\ W*7_
M (19_P"Y7K_]DI_<'Y4?V2G]P?E1[!!_:TNYY!_PBS_W*3_A%7_N5[!_9*?W
M!^5']DI_<'Y4>P0?VM+N>/?\(H_]PT?\(H_]PU[%_9*?W!^5']DI_<'Y5?L$
M)YK(\?'A1_[E+_PBC_W*]A&DQ_W!^5*-*C_N#\J7L$9O,WW/'#X1<_P4Y/![
MY^X:]D&E1_W!^52#2X_[@_*G[(PEF+9Y7:>%WC(^2N@LM%:/'RUW TZ,?PBI
M%LE'\(JU3.:>-;,*UL"H'%:]O 5QQ5M+8#M4Z18[5M&-CDG7<A8EP*G%(JXI
MU:',W<6EI*6D0%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4E+10)C:6C%+3%88>E4KA"<U?Q3&C!J6C2$K'-7=NS9XKG-0L)&!P*]":U5N
MU5Y-,C?J*S<+G;3Q7*>+:GH\[YPIKEKO0+DL?D/Y5]#R:!"_51^55'\+6['[
M@_*LW1N=D,RY3YX_X1ZZS]P_E4@T"Z_N'\J^@/\ A$[?^X/RH_X12W_N#\JG
MZN;QS>QX!_8%S_</Y4G]@77]T_E7T!_PBMO_ '!^5'_"*6_]P?E4O#&JSJQ\
M_?V!=?W3^5+_ &!=?W#^5?0'_"*6_P#<'Y4?\(I;_P!P?E2^K%?VX?/_ /8-
MU_=/Y4?V!=?W3^5?0'_"*6_]P?E2_P#"*6_]P?E3^K"_MP^?O[ NO[A_*C^P
M+K^X?RKZ!_X12W_N#\J/^$4M_P"X/RI_5P_MP^?O[ NO[I_*C^P;K^Z?RKZ!
M_P"$4M_[@_*D_P"$4M_[@_*E]6#^W#P#^P+K^Z?RI?[ NO[A_*O?_P#A%+?^
MX/RH_P"$5M_[@_*CZN5_;AX!_8%U_=/Y4G]@W7]T_E7T!_PBMO\ W!^5'_"*
M6_\ <'Y4_JXGGA\__P!@W7]T_E1_8-S_ '3^5>_GPI;_ -P?E33X5@_N#\J?
MU<:SL\"_L&Y_NG\J/[!NO[I_*O?/^$5@_N#\J4>%;?\ N#\J/JPWG9X%_8-U
M_=/Y4?V#=?W3^5>_CPI;_P!P?E2_\(I;_P!P?E2^KD_VX> ?V!=?W#^5']@7
M/]P_E7O_ /PBMO\ W!^5'_"*V_\ <'Y4?5Q_VX?/_P#8-U_=/Y4?V#=?W3^5
M?0'_  BEO_<'Y4?\(I;_ -P?E1]7)_MP^?\ ^P;K^Z?RH_L&Y_NG\J]^/A6W
M_N#\J;_PBL']P?E3^K%K.SP/^P;G^Z?RI/[!NO[I_*O?AX5@_N#\J</"EO\
MW!^5+ZL)YX> ?V!=?W3^5.&@77]T_E7OW_"*6_\ <'Y4?\(K;_W!^53]5(_M
ML\"_L&Y_N&F_V#=?W3^5>_\ _"*V_P#<'Y4?\(K;_P!P?E2^JA_;9\__ -@W
M7]T_E2?V#=?W3^5?0/\ PBEO_<'Y4T^%+?\ N#\JI88I9X> _P!@W/\ =/Y4
MO]@W/]TU[V?"L']P?E1_PBL']P?E3^K%?VV>!_V#=?W3^5)_8-U_=/Y5[^/"
MEO\ W!^5*/"EO_<'Y4OJQ+SP^?O^$?NO[A_*GIX?N<_</Y5[_P#\(I;_ -P?
ME2CPK;C^ ?E0L,8RSBYXG::'<*1\IKH;+2YUQ\IKU!/#4"_PC\JL)H42_P (
M_*M8T;'%5Q_.<9864JXR#746,+*!D5J)I<:= *LI:JG:M4K'#.KS"P#"BK%-
M5<"G4S!A12T46$%%%%4 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444F
M: %HINX4;Q0.S'4A%)N%&X4!9B%13?+%.WBDWBD4KC?*7TH\E?2G;A1N% 78
MWR%]*/(7TI^\4;Q1H%Y#/)7TH\E?2G[QZTF\4:!>0WR5]*/)7TIV\>M&\460
M7D-\H>E'DCTI^\4;QZT:!>0SR5]*/)6G[QZT;QZT:!>0SR5H\E?2G[QZT;QZ
MT:!>0SR5]*/)7TI^\>M)O%&@7D-\E?2CR5]*=O%+O%&@7D,\E?2CR5]*?O%&
M\>M&@7D,\E?2CR5]*?O'K1O'K1H%Y#/)7TH\E?2G[QZT;QZT:!>0SR5]*/)7
MTIV\4F\>M&@7D)Y*^E'E#TIV\4N\4:!>0SR5]*/)7TI^\>M&\>M&@7D-\E:3
MR5]*?O'K1O'K1H%Y#/*'I1Y*^E/WBDWBC0+R&^2OI1Y*^E+O'K2[QZT:!>0W
MRE]*/)7TI^\4;QZT:!>0SR5I?)6G;QZT;QZT:!>0SR5]*/*'I3]X]:-X]:-
MO(9Y2^E'DKZ4_>*3>/6C0+R&^2OI1Y*^E.WCUI=XHT"\AGE#TH\E?2G[Q1O'
MK1H%Y#?)6D\E:?O'K1O'K1H%Y#/)'I1Y0]*?O'K1O%&@78SR5]*/)7TIV\4;
MQZT:!>0WR5]*/*'I3MXI=XHT"\AGDKZ4>2OI3]XI-XHT"\AODKZ4>2OI3MXI
M=XHT"\AGE#TH\E?2G[Q1O%&@7D,\E?2CR5]*=O'K1O'K1H%Y#?*7TH\I?2G[
MQ1O%&@7D,\E?2CR5IVX4;A1H%Y#?)7TH\H>E.W"EWBC0+R&>4/2CR5]*?O%)
MO'K1H%Y#?)7TH\E?2G;Q2[Q1H%Y#/)6CR5]*?O%&\4:!>0WR5]*3R5]*=O'K
M1O% 7D-\E?2CR5]*?O%&\4!>0WRE]*/*7TI=XHWT!J)Y:TOEBC>*7>*+"U#R
MQ1L%+O%&\46%J&P4NVC<*,TPU#%+29I:!!1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 )BC%+10
MF*,4M% "8HQ2T4 )BC%+10 F*,4M% "8HQ2T4 )BC%+10 8HQ110 F*3;3J*
M N,VBEQ3J*!W$Q2XHHH$)BC%+10 4F*6B@!,4FT4ZB@=QNVEQ2T4"N%)BEHH
M 3%&*6B@ Q28I:* &[11M%.HH'<3%&*6B@04444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%)1FE<!:2FEJ:7'K1<=AS-@57DG
M"]ZAN;D(IYKF-3UCR@?FJ7(Z*5)R9TCWJ#^(5'_:"?WA7F-_XK,9/S_K66?&
M;9^_^M9.H>C# 2DCV/[>G]X4?;T_O"O'U\9'^_\ K3_^$Q/]_P#6I]LC597-
MGK9OT_O"D_M!/[P_.O(SXQ/]_P#6F?\ "8G^_P#K2]NBUE4^Q[ +]/[PIPOD
M_O#\Z\=_X3(_W_UI?^$T/]_]:/;H3RFH>PF_3^\*:=03^\*\A_X3,_W_ -:3
M_A,2?X_UI.NAK*:G8]=_M!/[PH_M!/[P_.O(O^$P/]_]:3_A,3_?_6DJZ'_9
M,^QZ]_:"?WA^=']H)_>'YUY!_P )DW]_]:7_ (3$_P!_]:?MT']DS['K_P#:
M"?WA1_:"?WA7D/\ PF!_O_K1_P )@?[_ .M'UA!_9,^QZ]_:"?WA^=']H)_>
M'YUY!_PF)_O_ *TG_"9'^_\ K1[=!_9,^Q[!_:"?WA1_:"?WA7D \8G^_P#K
M2_\ "8'^_P#K1[=!_9,^QZ]_:"?WA^=)]O3^\/SKR(^,3_?_ %IO_"8M_?\
MUH]N@_LF?8]?^WI_>'YTO]H)_>'YUX__ ,)B?[_ZT[_A,#_?_6CVZ#^R9]CU
M[^T$_O"C^T$_O"O(?^$P/]_]:0^,3_?_ %H]N@_LF?8]?_M!/[P_.C^T$_O#
M\Z\?_P"$R/\ ?_6C_A,3_?\ UH]N@_LF?8]@_M!/[PI/[03^]7D7_"8'^_\
MK1_PF!_O_K1[=!_9,^QZ[]O3^\/SH^WI_>'YUY%_PF!_O_K1_P )@?[_ .M'
MUA#_ +)GV/7?[03^]^M+_:"?WA7D/_"8'^_1_P )@W]_]:/K"#^R9]CU[^T$
M_O"C^T$_O#\Z\@_X3%O[_P"M)_PF3?W_ -:/;H7]DS['L']H)_>'YT?V@G]X
M5X__ ,)DW]_]:7_A,3_?_6CVZ#^R9]CU_P#M!/[PI/[03^]^M>1?\)@?[_ZT
MO_"8'^_^M'UA#_LF?8]<^WI_>'YT?;T_O#\Z\B_X3 _W_P!:/^$P/]_]:/K"
M#^R9]CUW^T$_O4O]H)_>%>0_\)@?[_ZT?\)@?[_ZT?6$']DS['KW]H)_>%']
MH)_>'YUY!_PF+?W_ -:3_A,C_?\ UH]NA?V3/L>P?V@G]X4?V@G]X5Y!_P )
MBW]_]:7_ (3 _P!_]:/;H/[)GV/7?[03^]1]O3^\/SKR+_A,#_?_ %H_X3 _
MW_UH^L(?]DS['KOV]/[P_.C^T$_O5Y%_PF!_O_K1_P )@?[_ .M'UA!_9,^Q
MZ]_:"?WA1_:"?WA7D/\ PF!_O_K1_P )@?[_ .M'MT']DS['KW]H)_>'YT?V
M@G]X?G7D'_"8G^_^M'_"8G^_^M'MT']D3['K_P#:"?WA1_:"?WA7D/\ PF!_
MO_K1_P )@?[_ .M'UA"_LF?8]=_M!/[P_.C[>G][]:\B_P"$Q;^_^M)_PF+?
MW_UH]NA_V3/L>O?V@G]X?G2_V@G]ZO(?^$Q/]_\ 6E_X3 _W_P!:/K"#^R9]
MCUW^T$_O"D^WI_>'YUY%_P )@?[_ .M'_"8G^_\ K1]80?V1/L>O?;T_O#\Z
M/[03^\/SKR#_ (3$_P!_]:7_ (3 _P!_]:/;H/[(GV/7?[03^]2_V@G]X?G7
MD/\ PF!_O_K2'QB?[_ZT?6$+^R9]CU[[>G]X?G1]O3^\/SKR#_A,F_O_ *T?
M\)B?[_ZT_;H/[)GV/7_[03^]2C4$_O"O(?\ A,#_ '_UI?\ A,3_ '_UI?6$
M']DS['KXOT_O#\Z7[='_ 'A7C_\ PF1_O_K1_P )F?[_ .M/VZ)_LFH>OF_3
M^\*:=03^\*\B_P"$R/\ ?_6C_A,#_?\ UI?6$-93/L>N?V@G]ZC[>G]X?G7D
M7_"8-_?_ %II\8M_?_6CVZ'_ &3/L>O_ &]/[P_.E_M!/[P_.O'_ /A,F_O_
M *T?\)B?[_ZT>W0?V5/L>P?V@G]ZC^T$_O"O(/\ A,3_ '_UH_X3(_W_ -::
MKH7]E3['K_\ :"?WA^=']H)_>%>0?\)D?[_ZT?\ "8G^_P#K3]O$/[)F>O\
M]H)_>% U!/[PKR'_ (3 _P!_]:/^$Q/]_P#6I^L(?]DS['L OT_O"C[='_>%
M>/?\)F1_'^M(?&I_O_K5*LC-Y7-'L)U!/[PIO]HI_>%>.GQH?[_ZTJ>,B3]_
M]:KVJ)_L^2/8Q?J?XJF6[![UY5:>*#(1\_ZUT-GK)DQ\U6JJ,9X-H[E9\]ZE
M63-<[;7N\#FM6";=5J29R5*7*:(:G@U%'R*E IG,Q:6DI:9 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 44F::6I-CL*34;-BF/+B
MJTMP .M2VC2--L6>YV \UD76L"//S5%J%X IYKC-5U$C=\U9RE8[J.&YMS9O
MO$(P1NKDM3U7S=V&K#O=2.X_-68]Z6/6N>51GMX;!10E^[2$\UE&-\U?:4-4
M9(K"4SWJ.&216"N.]+\WK4_%)BLG,[HX=%<[O6F?-ZU:V9H\NI<C3ZNBIA_6
MEVOZU9V8HVU#D4L/$KX?UI?G]:GP*-M+F97U>)#\WK2;7]:L;:.*?,Q_5XE?
M8_K1M8=ZL<4<4<P?5HE?YO4TGS>M3[:-M',P^KQ(,-ZT;7]:L;:7 I\S)^KQ
M*V&]:7+>M3[:3;2<F4L/$@^;UHVMZU/MI<"FI">'B5]K>M'S>M6<4FRDY L/
M$@^;U-)AO6K'ETNRA2#V$2MM?UHPWK5G I-M/F8OJ\2O\WK2_-ZU-MHVTN9E
M?5XD7S>IHPWK4V*,4^87L(D'S>M'S>IJ?;1Y=+F'[")7^;UHVMZU9V4;::DQ
M.A$K;6]:/F]:L8%)MH<F"P\2'YO4T?-ZU-MHVTN8?U>)%AO6CYO4U-BC;3YA
M>PB0?-ZTGS>M6-E'ETN8?L(E?#>M&U_6K.VC I\S)^KQ*V&]:/F]:L;:3;2<
MF4L/$A^;UI<-ZFI=M+BCF#V$2'#>M)\WK4^*3;1S"]A$A^;UHPWK4VRG!:.9
ME?5XD&U_4T8?UJS@4A6CF#ZO$K?-ZT?-ZU/LI-M',P^KQ(L-ZT;7]:G %+Q1
MS![")6PWK1\WK5@BF[:.9A]7B0_-ZT8;U-3;:=MI\S%[")7P_K2_-ZU/M%&V
MDY,/8(K_ #>M&&]:GVT8H4F+ZO$K[7]31M;UJQ@48%/F%]7B0?-ZT?/ZU-BE
MQ2YF/V$2OAO6C:_J:L8%'%-2%]7B08?UI<-ZU-@48HN/V$2##>M)M?UJQBC
MI\PO81*VU_6C#>M6<"DVTN83P\2O\_K1AO4U/MI<"ES,7U>)7VOZTN']:GXH
MP*KF*]A$A^;UI/F]:GQ1MHN)T45RK^M,*/ZU;P*0XJU(PG0B46#CO2QEMPYJ
M9P*:@^:M8NYP5:*-S36;(YKMM+)PO-<7IHY%=IIA^[6L3RZU,ZZR)P*WK4]*
MY^R/ K>M>U=$#Q,3&QKPGBK -5H1Q5@"NA'D36HZEI*6F9A1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 444E !FD)IIS3>: '$U$[8%.J&;.TU+1
M<2C=78C!R:P+S64CSEJEU<R -MS7GFL2766V@UE)'H4$C9U'7XR#\WZUR&I:
MH),X:L:Y-ZS'AJJFVNWZJ:PE<]>CRH9<W)9^M5A,<]:M?V9<-U0T?V3/_<-9
M-,]6C5BB$2T[S:D_LJX_N&G#2[C^X:R<&>C3Q,%U(_,IPD%2#3+C^X:7^S+C
M^X:ATV=2Q<.XT2"G>8M)_9MQ_=-)_9US_<-+D8/&0[@9!49<5)_9MQ_<-+_9
MEQ_<-2Z;&L9#N1;Q2[Q4O]F7']PT?V9<?W#0J;']<AW(MXII<5/_ &9<?W#1
M_9=Q_<-5[)C^NP[E?S*4.*G_ ++N/[AH_LNX_N&E[)B^NP[D0<4N\5)_9EQ_
M<-)_9MQ_<-+D8_KL.Y'O%)Y@J;^S;C^X:3^S+C^X:?(Q?7(=R/S!1Y@IYTRX
M_N&D_LVX_N&CD8OKL.XWS!3?,%2_V9<?W#2_V9<?W#2]FQ_78/J1B04\2"E_
MLRX_N&E_LVX_NFE[-A]<AW#S%IAD%/\ [.N/[AH_LVX_NFCD8?6X=R(N*3S!
M4O\ 9MQ_<-']F7']PU7(Q?7(=R/S!1Y@IW]FW']PT?V;<?W#1[-A]>AW&>8*
M XJ3^S+C^X:7^S+C^X:GV;']<AW&B04[S!BE_LVX_NFC^SKC^X:/9L/KD.XT
MR"F&05+_ &;<?W31_9MQ_<--08?6X=R'S!2^8*D_LRX_N&D_LVX_NFGR,7UV
M"ZC/,%(9!3_[-N/[AI?[,N/[AI>S8_KL.Y%O%.$@J3^S+C^X:7^S;C^X:7LV
M'UR'<02"@R"E_LZX_NFC^SKC^Z:/9L/KD.Y&9!3?,%3?V;<?W32?V9<?W#3Y
M&+ZW#N1^8*/,%/\ [-N/[II/[-N/[AI\C#Z[#N-\P4F\5)_9MQ_<-+_9EQ_<
M-+V;']=@^I%O%+O%2?V9<?W#1_9EQ_<-+V;#ZY#N,WBCS!4G]FW']PT?V;<?
MW#5*FQ_78=R/S!1Y@J7^S;C^X:0Z9<?W#3]FP^O0[D?F"D,@I_\ 9ES_ '#1
M_9ES_<-+V;)^O0[D?F"D\P5-_9EQ_<-']F7']PU/LV/ZY#N1!Q3MXI_]F7']
MPT?V;<?W#3Y&/ZY#N,WBCS!3_P"S;C^X:/[-N/[AHY&'UV'<9Y@H\P4_^S;C
M^X:3^S;C^X:.1A]=AW&>8*3S!4G]FW']PT?V9<?W#1[-B^O0[D7F"C>*F_LR
MX_N&C^S+C^X:7LV'UR'<A\P4>8*E_LRX_N&D_LRX_N&JY&3]=CW(]XHWBIAI
MEQ_<-+_9EQ_<-'LF/ZY#N0>8*/,%3?V9<?W#3?[,N/[AH]FT+ZY#N1^8*-XJ
M7^S+C^X:7^S+C^X:3@QK&0[D.\4>8*F_LRX_N&D_LRX_N&A08?7(=R+S!2>8
M*E_LRX_N&C^S+C^X:?(R?KD.Y#Y@H\P5-_9EQ_<-']F7']PTO9L/KD>Y'Y@H
M\P5)_9EQ_<- TRX_N&GR,'C(=R/>*87JR-,N/[AH.EW&/N&J4&83Q<>Y19Q2
M(XW59?2KC^X::FE7.[[AK6,&<53%1-?3F&179Z9_#7)Z;ILX*Y4UVNEV<BA<
MJ:WC$\ZK7BSI+$<"N@M!TK(LH& '%;MM&1BNB*/&Q,TS2A'RU.*AB'%3ULCQ
MY;A1113("BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BDS29H%<=13<T9I7"XZBDS32:+E#Z*C
MW4;J7,%B2BF@TM.X@Q2;:6BBX#-M,=,BIJ3%2RD95S8+*#D5B7/AN.8G*BNN
M*TPH*5C2-1HX-_!L).=@IH\&PC^ ?E7>^6/2D\H>E'(C98B2.%'A"+^X/RIP
M\(1?W!^5=SY(]*41#TI>S17UR:ZG#CP?%_<'Y4?\(?%_<'Y5W7ECTH\L>E'L
MT/Z]4[G"'PA%_<%)_P (C%_<'Y5W7E#TH\H>E+V:*6/J]SA/^$0B_N#\J/\
MA$(O[@KN_*'I1Y0]*/9H/K]3N<)_PB$7]P?E2_\ "(1?W!7=>4/2CRAZ4U2B
M'U^KW.&_X1&+^X*3_A$8O[@KNO*'I1Y0]*KV<0^OU>YPW_"(1?W!^5.'A"+^
MX/RKN/*'I2^6/2E[.(?7ZO<X?_A$(O[@I#X0B_N#\J[G8/2DV#TI>SB+Z_5[
MG#'PA%_<%-_X1"+^X*[GRQZ4>6/2G[.(_K]7N<-_PB,7]P4?\(C%_<%=SY0]
M*/*'I4^RB/Z_5[G#?\(A%_<'Y4?\(A%_<'Y5W/ECTH\L>E4J<1?7JO<X;_A$
M(O[@_*C_ (1"+^X/RKN?+'I1Y0]*3I1#Z_5[G#?\(C%_<%'_  B,7]P?E7<^
M4/2D\H>E+V41_7ZO<X?_ (1&+^X*/^$1B_N"NX\L>E'E#TH]E$/K]7N</_PB
M,7]P4?\ "(1?W!^5=SY0]*/*'I0J40^OU>YPW_"(1?W!1_PB$7]P?E7<^6/2
MCRQZ57LXB^O5>YPW_"(1?W!^5'_"(Q?W!7<^4/2CRAZ5/LHC^OU>YPW_  B,
M7]P?E1_PB,7]P5W/E#TI/*'I1[*(?7ZO<X?_ (1&+^X*/^$1B_N"NX\H>E+Y
M0]*/91#Z_5[G#?\ "(1?W!^5)_PB$7]P5W7E#TI/*'I1[*(?7ZO<X;_A$(O[
M@H_X1"+^X*[GRQZ4OE#TH]D@^O5.YPW_  B,7]P?E1_PB,7]P5W/E#TH\H>E
M'LHA]?J]SAO^$1B_N"C_ (1&+^X*[CRAZ4>4/2CV40^OU>YP_P#PB,7]P4?\
M(C%_<%=SY0]*/*'I1[*(?7ZO<X7_ (1"+^X*/^$0B_N"NZ\H>E)Y8]*/91#Z
M]4[G#?\ "(1?W!2_\(C%_<'Y5W'E#TI?*'I1[*(?7ZG<X;_A$8O[@H_X1&+^
MX*[GRAZ4>6/2FJ40^OU>YPW_  B$7]P4?\(C%_<%=SY8]*/+'I3]G$/K]7N<
M-_PB,7]P4H\(1?W!^5=QY0]*7RQZ5/LT+Z_5[G$?\(?#_<%'_"'P_P!P?E7;
M[!Z4;!Z4_91%]>J]SACX0B_N"D_X1&+^X/RKNO+'I2>4/2E[*(UCZO<X7_A$
M8O[@_*E_X1&+^X/RKN?*'I2>4/2CV41_7ZO<X?\ X1&+^X/RI/\ A$8O[@KN
M?*'I2^4/2CV40^OU>YPO_"(Q?W!^5'_"(1?W!^5=UY0]*/+'I35*(?7ZO<X7
M_A$(O[@_*E_X1"+^X/RKN/+'I2^4/2G[*(OKU7N<+_PB,7]P?E1_PB,7]P?E
M7=>4/2CRAZ5/LHC^OU>YPO\ PB$7]P?E1_PB$7]P5W/E#TH\H>E'LD'UZIW.
M&_X1&+^X*7_A$8O[@_*NY\H>E'E#TH]F@^OU.YPO_"(Q?W!1_P (A%_<%=UY
M0]*3RAZ4>R0?7JG<X;_A$(O[@H_X1&+^X/RKN?*'I2^4/2CV40^OU.YPO_"(
MQ?W!^5'_  B$7]P5W7E#TH\H>E'LHA]?J]SA?^$0B_N"C_A$(O[@KN?*'I2^
M4/2CV40^O5.YPO\ PB$7]P?E1_PB$7]P?E7=>4/2CRAZ4>RB+Z]4[G"_\(A%
M_<%'_"(1?W!7<^4/2CRAZ4>RB/Z]4[G#?\(C%_<%+_PB,7]P?E7<^4/2E\H>
ME'LD)XZIW.&_X0Z(_P  IZ^#(?[@_*NX$8]*<$'I1R(REBZCZG'1>%8H^B"K
MT6C)%_"*Z/8/2F[!342?K$^YF1687M5R.'%3^73@M6D1*JV"C I])2U1BPHH
MHH$%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 E&:0FF[J8F.HINZES2%87%&*,TM38JP4TTI-,+8I6*
M08HQ3#*!3#< =Z>A?*V6!3JI&Z [TW[:/6BZ#V4F7Z*S_MR^M'VY?6E=#]C(
MT*3-41>@]Z=]K'K1="]E(N4F*J?:QZTGVP>M/F0>SD7,452^V#UI?M8]:7,A
M^SD7:7(JC]J'K1]K'K2YA>RD7J*H?;!ZT?;!ZTN8/92+V:,U0^V#UH^V#UI<
MX_8R+^:6L_[8/6E^V#UIJ0>RD7Z3(JE]K'K1]J'K3YQ>RD7LT51^UCUH^V#U
MI\Z#V4B]Q1Q5'[:/6D^VCUHYD'LI%_BDJC]L'K1]L'K2YA^RD7J*I?;!ZT?;
M!ZT^9"]E(NT<51^V#UH^V#UI<P>RD7J3%4_M@]:/MH]:?,@]E(NT51^V#UH^
MV#UHYA^RD7J2J7VP>M'VP>M','LI%W%+Q5+[8/6C[6/6GS(7LI%WBCBJ?VH>
MM'VL>M',@]E(MXHQ5/[8/6C[8/6ES(?LI%VBJ7VL>M'VH>M+F%[*1=I,53^U
MCUH^V#UI\R'[*1<Q2\52^V#UI?M8]:?,A>RD7.*3%5/M8]:3[8/6CF0>RD7,
M4M4OM@]:3[8/6ES(?LI%ZBJ/VP>M'VP>M+F#V4B[1BJ7VP>M+]L'K3YD'LI%
MWBCBJ?VL>M'VH>M/F0O92+G%)BJGVL>M)]L'K1S(?LI%REJC]L'K1]L'K2Y@
M]E(O4E4OM@]:/M@]:.8/92+N**I?;!ZTOVL>M',@]G(NT52^U#UH^UCUI<R%
M[*1<Q1BJ?VP>M)]L'K3YD/V4B]15'[8/6C[8/6ES![*1>I,52^V#UH^V#UI\
MR#V4B[2U1^V#UH^V#UHYD'LI%ZDXJE]L'K1]L'K2YD'LI%W%+5'[8/6C[8/6
MGS(/92+U%4?M@]:/M@]:7,'LI%W HQ5+[8/6E^V#UI\R#V4B[2U1^V#UH^V#
MUI\R%[*1>I,52^V#UH^V#UHYD'LI%VBJ7VP>M)]L'K4\R#V4B]Q15'[8/6E^
MV#UHY@]E(N8I<52^V#UI?M8]:?,@]E(NT53^UCUI/M8]:?,@]G(N8HP*I_;!
MZTGVQ?6CF0>RD7J*H_;%]:3[8/6CF0_92+_%'%4/MH]:/MH]:+H7LI%^DS51
M;H-WJ59-W>J5A.#6Y-FEI@IPIDL6EI*6D2%%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4AI:* &&HR*
MFQ2$"@"+!I:&D5:@DNXU'6@I(D>4)UJK)J21]36=?:DB@X:N2U+6",X:I;L=
M%.CS'92Z]$G5A^=4I?$L*_Q#\Z\NOM<ER<,:P[G7)^<,:R=0[J>!3/8)/%,
M_C'YU7;Q3"?XQ^=>)RZU<Y^\:C75[HG[QK)U3LA@4>UMXFB/\8_.HSXCC_O_
M *UX^FJW!_B-2?VG<?WC6;JG7' (]9/B-/[_ .M)_P ))'_?_6O)#J<_]XTP
MZI/_ 'C2]J:?4(GL*^)8_P"^/SJ0>)HO[X_.O&?[4N/[QH_M6Y_O&CVI#R]'
MLW_"31?WQ^=-/B2/^^/SKQT:K<?WC3AJMQ_>-)U6)8!'L'_"21_WQ^=.'B6/
M^^/SKQ_^U9_[QIIU6X_O&E[5C_L],]D_X26+^^/SII\2Q?WQ^=>.?VM<?WC1
M_:MQ_>-/V@UER/83XDC_ +X_.D_X22/^^/SKR#^U;C^\:/[4N/[QI>T+_LZ)
MZ_\ \)+'_?'YT?\ "2Q_WQ^=>/\ ]J7']XTG]JW']XT_:$_V>CV'_A)8_P"^
M/SH_X26/^^/SKQW^U;C^\:7^U;C^\:/:,/[/1[&/$L7]\?G3AXEB_OC\Z\:_
MM:X_O&C^UKC^\:/:,7]G(]E/B6+^^/SIA\2Q_P!\?G7CO]JW']XT?VI<?WC^
M='M&']G(]@_X26/^^/SI?^$EC_OC\Z\>_M2X_O&C^U+CU-'M1_V>CV+_ (26
M/^^/SH_X26/^^/SKQW^U+C^\:/[5N/[QI^U%_9Z/8?\ A)8_[_ZT?\)+'_?_
M %KQ[^U+C^\?SH_M2X]32]HP_L]'L/\ PDL?]\?G2_\ "2Q_WQ^=>.?VI<>I
M_.C^U;CU/YT>V8?V>CV+_A)8_P"^/SH_X26/^^/SKQ[^U;C^\:/[5N/[QH]J
M']GH]A_X26/^_P#K2_\ "2Q_WQ^=>._VK<?WC2?VK<?WC^='MA_V>CV+_A)8
M_P"^/SH_X26/^^/SKQW^U;C^\?SI?[5N/[QH]K</[/B>Q?\ "2Q_WQ^=.'B6
M+^^/SKQO^U;C^\:/[5N/[QI>U8O[/1[+_P )-%_?'YTA\2Q?WQ^=>-_VM<?W
MC1_:UQ_>-'M6']G(]B_X26/^^/SH_P"$EC_OC\Z\=_M6X_O&C^U;C^\:/:#_
M +/1[(/$L7]\?G2_\)-%_?'YUXU_:MQ_>-']K7']XT>U8O[.1[&?$L7]\?G2
M?\)+'_?'YUX[_:MQ_>-']JW']XT>U#^ST>Q#Q+'_ 'Q^=/'B:+^^/SKQK^U;
MC^\:/[6N/[QH]JP_LY'LI\31?WQ^=-/B6/\ OC\Z\<_M:X_O&C^U;C^\:/:L
M/[.1[#_PDL?]\?G1_P )+'_?'YUX]_:MQ_>-']JW']XT_:C_ +/B>Q?\)+'_
M 'Q^=)_PDL?]\?G7CO\ :MQ_>/YT?VI<?WC1[8/[/1[%_P )+'_?'YTH\2Q_
MWQ^=>._VK<?WC1_:MQ_>-'M0_L^)[(/$T7]\?G2_\)-%_?'YUXU_:UQ_>-']
MK7']XTO:L7]G(]D/B6+^^/SIA\2Q_P!\?G7CW]JW']XT?VK<?WC1[5A_9Z/8
M?^$EC_OC\Z/^$EC_ +X_.O'O[5N/[QI/[5N/[Q_.G[:P_P"SXGL7_"2Q_P!\
M?G1_PDL?]_\ 6O'?[5N/[QH_M6X_O&CVS#^ST>Q?\)+'_?'YTX>)8_[X_.O'
M/[5N/[QH_M:X_O&CVK%_9R/9?^$FB_OC\Z#XFB_OC\Z\:_M:X_O&C^UKC^\:
M7M6+^SD>Q'Q+'_?'YTG_  DL?]\?G7CW]JW']XT?VI<?WC3]J5_9Z/8?^$EC
M_OC\Z7_A)8_[X_.O'?[4N/[QH_M2X]3^='M@_L]'L/\ PDL?]\?G1_PDL?\
M?'YUX[_:MQ_>-']JW']XT>U8?V>CV+_A)8_[X_.E_P"$EC_OC\Z\<_M6X_O&
MC^U;C^\:/:M!_9Z/8_\ A)8_[X_.D_X26/\ OC\Z\>_M6X_O'\Z/[5N/[QH]
ML']GH]A_X26/^^/SH_X26/\ OC\Z\>_M6X_O&C^U;C^\:/:A_9Z/8O\ A)8_
M[X_.C_A)8_[X_.O'/[5N/[Q_.E_M6X_O'\Z/;!_9Z/8?^$EC_OC\Z/\ A)8_
M[X_.O'O[5N/[QH_M6X_O&CVH?V>CV'_A)8_[X_.E_P"$EC_OC\Z\=_M6X_O&
MD_M6X_O'\Z/;,/[/1['_ ,)+'_?'YT?\)+'_ 'Q^=>._VK<?WC^=']JW']XT
M>U;#^SXGL7_"2Q_WQ^='_"2Q_P!\?G7CO]JW']X_G1_:MQ_>--50_L^)[%_P
MDL?]_P#6C_A)(_[X_.O'?[5N/[QIPU6X_O&DZK%]01[!_P ))'_?'YTX>)8_
M[X_.O'_[5G_O'\Z:=5N/[QI>U8OJ"/9/^$EB_OC\Z3_A)8O[X_.O&_[5N?[Q
MI?[5N/[QI^U#^SD>Q?\ "21_WQ^=-_X22/\ OC\Z\@&JW']XT'5;C^\:/;,/
MJ"/7O^$EC_O_ *TA\31_WQ^=>/'5+C^\:C;5+G^\:I562\"CV$^)X_[X_.A?
M$\>?OC\Z\:.J7/\ >-+'JEQN'S&M8U#*6$2/=+;Q#&Q'S#\ZV;;6(WQ\PKP_
M3]1N"1R:Z_3;N<@<FM%,XZF$1ZK%?HP'-6DN U<793RD#)K>M78XS6BE<\^K
MAU$W V:=4$1.*FJSC:L+1110(**** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% "49HHIDZA2TE%(:%I,"EI*3&)@>E&!Z
M4M%+4!-J^E&T>E+11J FT>E&U?2EHH -H]*-H]**6G<!-H]*-H]*6BF FT>E
M&T>E+10 FT>E&T>E+10 FT>E&T>E+10 FT>E&T>E+10%Q-H]*-H]*6B@+B;1
MZ4;1Z4M% 7$VCTHVCTI:* N)M'I1M'I2T4 )M'I1M'I2T4 )M'I1M'I2T4!<
M3:/2C:/2EHH"XFT>E&T>E+10%Q-H]*-H]*6B@!-H]*-H]*6B@+B;1Z4;1Z4M
M% 7$VCTHVCTI:* N)M'I1M'I2T4 )M'I1M'I2T4!<3:/2C:/2EHH 3:/2C:/
M2EHH"XFT>E&T>E+10%Q-H]*-H]*6B@+B;1Z4;1Z4M% 7$VCTHVCTI:* $VCT
MHVCTI:* N)M'I1M'I2T4!<3:/2C:/2EHH"XFT>E&T>E+10%Q-H]*-H]*6B@!
M-H]*-H]*6B@+B;1Z4;1Z4M% 7$VCTHVCTI:* $VCTHVCTI:* N)M'I1M'I2T
M4 )M'I1M'I2T4!<3:/2C:/2EHH"XFT>E&T>E+10 FT>E&T>E+10%Q-H]*-H]
M*6B@+B;1Z4;1Z4M% 7$VCTHVCTI:* N)M'I1M'I2T4!<3:/2C:/2EHH"XFT>
ME&T>E+10 FT>E&T>E+10 FT>E&T>E+10 FT>E&T>E+10 FT>E&T>E+10 FT>
ME)M7TIU)2 ;M'I1M%.HJ;7'<;BG 444*(KBT4458!1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444F:
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
MMJ/^^*/[:C_OBO%_^$HF_O&C_A*)O[QI^T#ZHCVC^VH_[XH_MJ/^^/SKQ?\
MX2B;^\:/^$HF_O&E[0/JB/:/[:C_ +XH_MJ/^^*\8_X2>;^\:7_A)YO[QH]H
M/ZFCV;^VH_[XH_MJ/^^/SKQC_A)YO[QH_P"$HF_O&CV@?5$>S_VU'_?'YT?V
MU'_?%>+_ /"43?WC1_PE$W]XT_:"^J(]H_MJ/^^*/[:C_OBO%_\ A*)O[QH_
MX2B;^\:/:!]41[1_;4?]\?G1_;4?]\?G7B__  E$W]XTO_"3S?WC2]H'U1'L
M_P#;4?\ ?%']M1_WQ7C'_"3S?WC2_P#"3S?WC1[0?U-'LW]M1_WQ1_;4?]\?
MG7C'_"3S?WC2?\)1-_>-'M ^J(]H_MJ/^^*/[:C_ +XKQ?\ X2B;^\:/^$HF
M_O&G[07U1'M']M1_WQ1_;4?]\?G7B_\ PE$W]XT?\)1-_>-'M ^J(]H_MJ/^
M^/SH_MJ/^^*\7_X2>;^\:7_A)YO[QI>T&L(CV?\ MJ/^^*/[:C_OBO&?^$GF
M_O&D_P"$GF_O&CV@?4T>S_VU'_?'YT?VU'_?'YUXO_PE$W]XT?\ "43?WC1[
M07U1'M']M1_WQ1_;4?\ ?%>+_P#"43?WC1_PE$W]XT_:!]41[1_;4?\ ?%']
MM1_WQ^=>+_\ "43?WC1_PD\W]XTO:!]41[1_;4?]\4?VU'_?%>,?\)/-_>-+
M_P )/-_>-'M!_4T>S?VU'_?%']M1_P!\5XQ_PD\W]XT?\)/-_>-'M ^J(]G_
M +9C_OBD_MJ/^^/SKQC_ (2B;^\:/^$HF_O&CG%]41[/_;4?]\?G1_;4?]\5
MXQ_PE$W]XT?\)1-_>-+G8?5$>T?VU'_?'YT?VU'_ 'Q^=>+_ /"43?WC2_\
M"3S?WC3]H'U1'L_]M1_WQ1_;4?\ ?%>,?\)/-_>-+_PD\W]XT>T']31[-_;4
M?]\4?VU'_?'YUXQ_PD\W]XTG_"43?WC1[0/JB/:/[:C_ +XH_MJ/^^*\7_X2
MB;^\:/\ A*)O[QH]H+ZHCVC^VH_[XH_MJ/\ OC\Z\7_X2B;^\:/^$HF_O&CV
M@?5$>T?VU'_?'YT?VU'_ 'Q7B_\ PD\W]XTO_"3S?WC1[0?U1'L_]M1_WQ1_
M;4?]\5XS_P )/-_>-)_PD\W]XT>T#ZFCV?\ MJ/^^/SH_MJ/^^/SKQC_ (2B
M;^\:3_A*)O[QH]H+ZHCVC^VH_P"^*/[:C_OBO%_^$HF_O&C_ (2B;^\:?M ^
MJ(]H_MJ/^^*/[:C_ +X_.O%_^$HF_O&C_A*)O[QH]H'U1'M']M1_WQ1_;4?]
M\5XQ_P )/-_>-+_PD\W]XTO:#^IH]F_MJ/\ OBC^VH_[X_.O&/\ A)YO[QH_
MX2B;^\:/:!]41[/_ &U'_?'YT?VU'_?'YUXO_P )1-_>-'_"43?WC1[07U1'
MM']M1_WQ^=']M1_WQ^=>+_\ "43?WC1_PE$W]XT>T#ZHCVC^VH_[X_.C^VH_
M[X_.O%_^$HF_O&E_X2>;^\:/:!]41[/_ &U'_?'YTO\ ;4?]\?G7B_\ PD\W
M]XTO_"3S?WC1[0?U-'LW]M1_WQ^=']M1_P!\?G7C'_"3S?WC2?\ "43?WC1[
M0/JB/:/[:C_OC\Z/[:C_ +XKQ?\ X2B;^\:/^$HF_O&G[07U1'M']M1_WQ1_
M;4?]\?G7B_\ PE$W]XT?\)1-_>-'M ^J(]H_MJ/^^/SH_MJ/^^/SKQ?_ (2>
M;^\:7_A)YO[QI>T']41[1_;4?]\?G2?VU'_?'YUXS_PD\W]XTG_"3S?WC1[0
M/J:/9_[:C_OC\Z/[:C_OC\Z\8_X2>;^\:3_A*)O[QH]H+ZHCVC^VH_[X_.C^
MVH_[X_.O%_\ A*)O[QH_X2B;^\:/:!]41[1_;4?]\?G1_;4?]\?G7B__  E$
MW]XT?\)1-_>-'M ^J(]H_MJ/^^/SI?[:C_OC\Z\7_P"$GF_O&E_X2>;^\:/:
M#^IH]G_MJ/\ OC\Z3^VH_P"^/SKQG_A)YO[QI/\ A)YO[QH]H'U-'L_]M1_W
MQ^=']M1_WQ7B_P#PE$W]XT?\)1-_>-/V@OJB/:/[:C_OC\Z/[:C_ +XKQ?\
MX2B;^\:/^$HF_O&CV@?5$>T?VU'_ 'Q^=']M1_WQ^=>+_P#"43?WC2_\)/-_
M>-+V@?5$>S_VU'_?'YTO]M1_WQ^=>+_\)/-_>-+_ ,)/-_>-'M!_4T>S?VU'
M_?'YT?VU'_?'YUXQ_P )/-_>-)_PE$W]XT>T#ZHCVC^VH_[X_.C^VH_[XKQ?
M_A*)O[QH_P"$HF_O&G[07U1'M']M1_WQ^=']M1_WQ^=>+_\ "43?WC1_PE$W
M]XT>T#ZHCVC^VH_[X_.C^VH_[XKQ?_A*)O[QI?\ A)YO[QI>T']41[/_ &U'
M_?%']M1_WQ7C/_"3S?WC2?\ "3S?WC1[0/J:/9_[:C_OC\Z/[:C_ +X_.O&/
M^$GF_O&D_P"$GF_O&CV@OJB/:/[:C_OBC^VH_P"^*\8_X2>;^\:7_A)YO[QH
M]H/ZFCV;^VH_[XH_MJ/^^/SKQC_A)YO[QI/^$GF_O&CV@?5$>T?VU'_?'YT?
MVU'_ 'Q7C'_"3S?WC1_PD\W]XT>T#ZHCV?\ MJ/^^*/[:C_OBO&?^$GF_O&D
M_P"$GF_O&CV@?4T>S_VU'_?'YT?VU'_?%>+_ /"3S?WC2_\ "3S?WC1[0/JB
M/9_[:C_OBC^VH_[XKQG_ (2>;^\:3_A)YO[QH]H'U-'L_P#;4?\ ?'YT?VU'
M_?'YUXO_ ,)1-_>-*/$\W]XT>T%]41[/_;,?]\?G1_;,?]\?G7C8\33?WC3O
M^$EF_O&G[0/JB/8O[9C_ +X_.C^VH_[X_.O&SXFF_O&F'Q/-_>-+V@?5$>S_
M -M1_P!\?G1_;4?]\5XQ_P )/-_>-+_PD\W]XT^<?U1'LW]M1_WQ2_VS'_?%
M>,?\)/-_>-)_PD\W]XT^</JB/:/[:C_OBD_MF/\ OBO&/^$HF_O&C_A)YO[Q
MH]H+ZHCV?^VH_P"^*/[:C_OBO&?^$GF_O&C_ (2>;^\:.<?U-'L_]LQ_WQ^=
M']LQ_P!\5XO_ ,)/-_>-+_PD\W]XT^<7U1'L_P#;,?\ ?%']LQ_WQ^=>,CQ/
M-_>-+_PDTW]XT^<7U9'LW]LQ_P!\4X:S&?XQ7BA\43#^(TZ/Q3,6^\:M3,Y4
M$CW*+5$;HPJ[%=JW0UY!IFORR$?,:[73+]I N2:M2.6I21VB2Y[U,K9K+MY"
MRBKR-57.2<+%H&G5$IXI]!@T.HI*6@04444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1124 +249I,TQ7%HIM+185Q:**6I:&A*J72[D-6S4<
MBY%2RD<5J]D9 W%<)J>BERWRUZ[<V>_/%8UQHV_/RU#1TTZECQU] ;/W::-$
M8?PUZL_A_/\ !41\/?['Z5FXLZX8FQY?_8S?W32'1&/\)KT__A'?]BG#P]_L
M4O9LV6+/+#H+?W:3^PV'\)KU7_A'O]C]*:?#F?X*/9E_7$>5_P!C,/X31_8[
M'^&O43X;_P!B@>&_]C]*7LV+ZXCS :(Q_A-+_8+?W37J(\.?[%/_ .$>_P!C
M]*?LQ?6D>6?V$W]VC^PF_NFO4_\ A'O]BC_A'?\ 8I.FP^MH\L_L%O[II/[
M;^[7JG_"/?[%+_PC_P#L?I0J3*6+1Y5_8#?W:3^P6_NUZM_PC_\ L4T^'?\
M8_2J5(M8Q'E7]A-_=I?[!;^[7JG_  CO^Q2CP[_L4_9C>,B>5_V W]VD.@M_
M=KU?_A'O]BFGP[_L?I25,GZXCRG^PV_NT?V&W]VO5#X<_P!BD'AS_8JO9A]<
M1Y<-!8_PTO\ PC[?W37J@\/?[%+_ ,(]_L4>S%]<1Y0=!;^[3?[";^Z:]7/A
MW_8IG_".?[%/D#ZXCRL:$W]VG#0&_NUZF/#O^Q3AX>_V/TJ73'];1Y9_8!_N
MFC^P&_NUZI_PC_\ L4?\(]_L4O9B>,1Y5_8+?W31_8#?W37JO_"/?['Z4?\
M"/?['Z4>S#ZZCRK_ (1]O[IH_L!O[IKU;_A'O]C]*/\ A'O]C]*/9A]<1Y1_
M8#?W31_8#?W37JW_  CW^Q^E'_"/?['Z4>S%]<1Y5_PC[?W:7^P#_=->J?\
M"/\ ^Q1_PC_^S^E'LV/ZXCRO^P&_NTG]@M_=KU7_ (1__8H_X1[_ &/TH]F'
MUU'E7]@M_=-']@-_=->J_P#"/?['Z4O_  CW^Q^E'LP^N(\I_P"$?;^Z:3^P
M&_NFO5_^$>_V/TI/^$>_V/TH]F#QB/*?[ ;^Z:/[ ;^Z:]6_X1[_ &/TH_X1
M[_8_2CV8OKB/*_\ A'V_NFC^P#_=->J?\(__ +%'_"/_ .Q1[-C^N(\J_L%O
M[M']@M_=->J_\(]_L?I1_P (]_L?I1[,/KJ/*O[ ;^Z:/^$?;^Z:]6_X1[_9
M_2C_ (1[_8_2CV8?7$>4_P!@-_=-)_8#?W37J_\ PCW^Q^E)_P (]_L?I1[,
M3QB/*?[ ;^Z:7_A'S_=KU7_A'O\ 8_2C_A'_ /8H]F-8Q'E?]@-_=-']@M_=
MKU3_ (1__8H_X1[_ &/TH]F'UQ'E7]@M_=-']@-_=->J_P#"/?['Z4?\(]_L
M?I1[,/KJ/*O[ ;^Z:/[ ;^Z:]6_X1[_8_2C_ (1[_8_2E[,/KB/*/[ ;^Z:/
M[ ;^Z:]6_P"$>_V/TH_X1[_8_2G[,7UQ'E7_  C[?W:7^P&_NFO5/^$?_P!C
M]*/^$?\ ]G]*/9L?UQ'E?]@-_=-)_8+?W:]5_P"$?_V*3_A'O]C]*/9A]=1Y
M7_8+?W31_8#?W37JO_"/?['Z4O\ PCW^Q^E'LP^N(\I_X1]O[II/[ ;^Z:]7
M_P"$>_V/TI/^$>_V/TH]F#QB/*?[ ;^Z:/[ ;^Z:]6_X1[_8_2C_ (1[_8_2
MCV8OKB/*_P#A'V_NFC^P&_NFO5/^$?\ ]BC_ (1__8H]FQ_7$>5?V"W]VC^P
M6_NFO5?^$>_V/TH_X1[_ &/TH]F'UU'E7]@-_=-']@-_=->K?\(]_L_I1_PC
MW^Q^E'LP^N(\I_L!O[II/[ ;^Z:]7_X1[_8_2D_X1[_8_2CV8GC$>4_V W]T
MTO\ PC[?W:]5_P"$>_V/TH_X1_\ V*/9@L8CRO\ L _W32?V W]VO5?^$?\
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
M11<04M)10F(6BBBJ **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "DI:* &FFFGTWBD4AN31DT[BCB@8VB
MG<4<4 ,I<4[BCB@+AMHVTN11D4[BU&8HIV11D4[@ I:3(HW"D 8I*7<*,BG<
M!M. I,BEW"BX"XI:;N%&X5+%9CJ*3<*3<*5@LQ<48I-PHW"BP]1:,4FX4NX5
M/*+4*,4FX4;A341ZBXI:;N%+N%.PM1:,4FX4FX46"S#%)2[A29%%AB<T4N11
MD4QBT4FX4;A2L(0T<TN11Q3&%+29%&X46$+332[A1D4#$YI:,BC(H 6DI=PI
M,BE80G- I<BC(IC%HI-PHW"E804G-+D4<4QA2TF11N%%A"TVER*,B@8G-+1D
M49% "TE+N%)D4K"$YHI<BC(IC%HI-PHW"E804G-+D49%,84M)D4;A180M--+
MN%&10,3FEHR*,B@!:2EW"DR*5A"<T4N11D4QBT4F11N%*P@-)S2Y%'%,84M)
MD4;A180M--+N%&10,3FEHR*,B@!:2EW"DR*5A"<T"ER*,BF,6BDW"C<*5A!2
M<TN11Q3&(*=29%&X46$+3:7<*,B@8G-+1D49% "TE+N%)D4K"$YHI<BC(IC%
MHI,BC<*5A!2<TN11D4Q@*6DR*-PH$+24;A1D46 3FEHXHR*!BTE+N%)D4K"$
MHI<BC(IC"EI,BEW"E80AI.:7(HXIC"EI,BC<*!"TAHW"C(H 3FEHXHR*!BTE
M&X49%*PA**7(HR*8PI:3(I=PI6$(:3FER*,BF,*4"DR*7<*!"XI:;N%&X4,5
MF.HI-PI-PI6"S%Q2$4;A2;A3'J)1BER*,B@8 4X"FY%+N%*PAV**;N%+N%%A
M68M&*;N%&X4T%F!%(12[A29% QM.%&11D4#%HHW"DW"E80E%+D49%,8M&*3(
MI=PIB$(I*7(HXI#$Q3@*3(I=PH$+BEINX4;A0%F.HINX4;A2L*PN*0BC<*,B
MF,::*7(I>*!B 4[%&11D4"%Q11N%&12:$%%&110 4444""BBEHL 44450!11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1124 +129H
MS0*XM%)10,6FDXH)JM<3;%)I#2'O*!WJL]VH_BK!U'5_)!YKDK[Q;Y1/S_K6
M;D=-.E<]'-\O]ZD^W+_>KR0^-^?O_K3E\:9_C_6LW,ZHX6YZS]N7^]1]N7^]
M7E0\8_[?ZTO_  F/^W^M3[0T6"9ZI]N7^]1]N7^]7E7_  F7^W^M)_PF?^W^
MM'M1_47V/5_MJ_WJ/MJ_WJ\G_P"$T_V_UH_X33_;_6CVH_J$NQZO]N7^]1]M
M7^]7E7_"9_[?ZT?\)E_M_K1[47U%]CU7[:O]ZC[:O]ZO*#XT_P!O]:3_ (37
M_;_6CVH?46>K?;E_O4GV]?[U>4_\)GG^/]:7_A,?]O\ 6G[4:P+/5?MZ_P!Z
MG"]7^]7E'_"8_P"W^M+_ ,)F!_'^M/VJ#ZBSU?[:O]ZD-\O]ZO*?^$T']_\
M6C_A,L_Q_K1[5!]1EV/5/MZ_WJ47R_WJ\I_X3'_;_6E_X3'_ &_UH]J/ZB^Q
MZL+U?[U.^V+_ 'J\G_X3/'\?ZTO_  FO^W^M/V@OJ$NQZO\ ;5_O4?;5_O5Y
M1_PFO^W^M'_":?[?ZT>T%]0EV/5_MJ_WJ3[:O]ZO*/\ A-?]O]:3_A-?]O\
M6G[0/J,NQZN;U?[U-^WK_>KRK_A-,_Q_K1_PF/\ M_K2]H-8%GJOV]?[U.%Z
MO]ZO*?\ A,?]O]:/^$SQ_'^M+VH_J+['J_VU?[U(;Y?[U>4_\)I_M_K2'QG_
M +?ZT_:"6 EV/5?MZ_WJ7[<O]ZO*/^$R_P!O]:/^$S_V_P!:7M!_4'V/6?MJ
M_P!ZC[:O]ZO*/^$T']_]:/\ A-!_?_6G[5"^H2/5?MR_WJ3[>O\ >KRD^,_]
MO]:3_A,O]O\ 6E[0?U!]CUD7R_WJ7[:OK7DP\9_[?ZT[_A-/]O\ 6G[07U"7
M8]6^VK_>I#?+_>KRH^-/]O\ 6F_\)E_M_K1[0:P$NQZM]O7^]3A>K_>KR?\
MX3+_ &_UI1XT_P!O]:7M0> ?8]8^VK_>%(;U?[U>4_\ ":C^_P#K2'QG_M_K
M3]JA?4)'JOV]?[U*+Y?[U>3_ /"9?[?ZTH\9_P"W^M'M!_4'V/6/MJ^M+]M7
MUKR@>-/]O]:/^$T_V_UH]H+ZA+L>JF^7^]2?;U_O5Y2?&?\ M_K1_P )E_M_
MK1[0?U!]CU?[<O\ >IWVU?[PKR8>,_\ ;_6G?\)J/[_ZTO:B> D>K&]7^]2&
M^7^]7E1\:?[?ZTW_ (3/_;_6CVHU@)=CU;[>O]ZG"]7^]7DW_"9?[?ZTX>,_
M]O\ 6G[0'@'V/6/MJ^M(;U?[U>4_\)I_M_K2'QG_ +?ZT>T%]0EV/5?MZ_WJ
M47R_WJ\H_P"$R_V_UH_X3/\ V_UI>T']0?8]8%ZO]ZE^VK_>%>4#QI_M_K1_
MPFH_O_K3]JA?4)'JIOE_O4GV]?[U>4GQG_M_K2?\)E_M_K2]H/Z@^QZP+Y?[
MU.^VK_>KR8>,_P#;_6G?\)I_M_K3]H)X"78]6^VK_>I#?+_>KRH^-/\ ;_6F
MGQG_ +?ZT>T&L ^QZM]O7^]3A>K_ 'J\G_X3+_;_ %I1XT_V_P!:7M0> ?8]
M8^VK_>%(;U?[U>4_\)J/[_ZTA\:?[?ZT_:H7U"1ZK]O7^]2B^7^]7D__  F7
M^W^M+_PF?^W^M'M!_4'V/6!>K_>I?MJ_WJ\H'C3_ &_UH_X33_;_ %H]H+ZA
M+L>JF^7^]2?;U_O5Y2?&?^W^M'_"9?[?ZT>T']0?8]7%\O\ >IWVU?[U>3#Q
MG_M_K3O^$U']_P#6E[43P$NQZO\ ;5_O4TWR_P!ZO*O^$T_V_P!:;_PF?^W^
MM/VHU@)=CU;[>O\ >IPO5_O5Y-_PF7^W^M.'C/\ V_UH]H#P#['K'VU?[U(;
MU?[U>4_\)I_M_K2'QG_M_K1[07U"78]5^WK_ 'J!?+_>KRG_ (3+_;_6C_A,
M_P#;_6E[0KZ@^QZP+U?[U+]M7^\*\H_X33_;_6C_ (34?W_UI^U1/U"1ZL;Y
M?[U-^WK_ 'J\I/C/_;_6D_X3+_;_ %I>T']0?8]8^W+_ 'J=]M7^]7DP\9_[
M?ZT[_A-/]O\ 6G[03P$NQZO]M7^]3?MR_P!ZO*CXT_V_UII\9_[?ZT>T&L!+
ML>K?;U_O4X7R_P!ZO)_^$R_V_P!:4>,_]O\ 6E[4'@'V/6/MJ_WA2&]7^]7E
M/_":_P"W^M(?&G^W^M/VJ%]0D>J_;U_O4OV]?[U>4?\ "9?[?ZT?\)E_M_K1
M[0?U!]CU@7J_WJ7[:O\ >KR@>-/]O]:/^$T_V_UH]H+ZA+L>K&^7^]3?MZ_W
MJ\J/C/\ V_UI/^$R_P!O]:/:#6 ?8]7^W+_>IWVU?[U>3#QG_M_K3O\ A-!_
M?_6E[4'@)=CU?[:O]ZFF^7^]7E7_  FG^W^M-/C/_;_6CVHE@)=CU;[>O]ZG
M"^7^]7DW_"9?[?ZTX>,_]O\ 6G[0;P#['K'VU?6D-ZO]ZO*?^$T_V_UI#XT_
MV_UH]H+ZA+L>JF_7^]0+]?[U>4_\)E_M_K1_PF7^W^M+VA7U!]CU@7J_WJ7[
M:O\ >%>3CQI_M_K2_P#":C^_^M/VJ)^H2/5C?+_>IOV]?[U>5'QG_M_K3?\
MA,O]O]:7M!K /L>L"^7^]3OMJ^M>3#QG_M_K3AXT_P!O]:?M!/ 2['J_VU?6
MFF^7^]7E1\:?[?ZTT^,_]O\ 6CV@+ 2['JWV]?[U.%\O]ZO)O^$R_P!O]:</
M&?\ M_K2]H-X!]CUC[:O]X4AO5_O5Y3_ ,)J/[_ZTA\:?[?ZT_:B^H2/5C?+
M_>I/MZ_WJ\I_X3+_ &_UH_X3+_;_ %H]H/Z@^QZP+U?[U+]M7UKR<>-/]O\
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
MO]G3_P"U1_9T_O7IO_".G^Y^E(?#I_N?I2Y&5]8I]SS/^SY_>C^SYO>O2O\
MA'3_ '/TH'AT_P!S]*KE8>WI]SS;^SI_>C^SI_>O3!X>/]S]*#X>/]S]*?*Q
M?6*?<\R.GS^])]@F]Z]+;PZ?[GZ4S_A'3_<_2CE8OK$.YYQ]@G]Z/[.G]Z])
M7PZ?[GZ4\>'3_<_2H<6/ZQ3[GF?]G3^]']GS^]>F?\(Z?[GZ4T^'3_<_2A18
M_;T^YYK_ &?-[TO]G3^]>D_\(Z?[GZ4X>'C_ '/TJN5A[>GW/-/[.G_VJ#I\
M_O7IO_"/'^Y^E,/AX_W/TI\K)^L4^YYG]@F]Z/L$WO7I!\.G^Y^E*/#I_N?I
M2<6'UBGW/-_[/G]Z/[.G]Z]+'AT_W/TIW_".G^Y^E3R,?UBGW/,O[/G]Z/[/
MF]Z]+/AT_P!S]*3_ (1T_P!S]*:BQ^WI]SS;^SY_>E_LZ?WKTD>'3_<_2G_\
M(\?[GZ4^5B=>GW/,O[.G]Z3[!-[UZ8?#Q_N?I49\.G^Y^E/E8OK%/N>;?8)O
M>E_L^?WKT?\ X1T_W/TIX\.G^Y^E2XL/K%/N>:_V=/\ [5']G3^]>F_\(Z?[
MGZ4A\.G^Y^E3R,?UBGW/,_[/G]Z/[/F]Z]*_X1T_W/TH'AT_W/TJU%C]O3[G
MFW]G3^]']G3^]>F#P\?[GZ4'P\?[GZ4^5B^L4^YYD=/G]Z3[!-[UZ6WAX_W/
MTIG_  CI_N?I1RL7UBGW/-_L$_O2_P!G3^]>D#PZ?[GZ5(/#I_N?I4.#']8I
M]SS/^SI_>C^SY_>O3?\ A'3_ '/TIA\.G^Y^E"BQ^WI]SS7^SYO>E_LZ?WKT
MG_A'3_<_2G#PZ?[GZ57*P]O3[GFG]G3^]']GS^]>F_\ "/'^Y^E-/AX_W/TI
M\K)^L4^YYE]@F]Z/L$WO7I)\.G^Y^E(/#I_N?I2<6'UB'<\X_L^?WH_LZ?\
MVJ]+'AT_W/TIW_".G^Y^E2X,?UBGW/,O[.G]Z/[/G]Z]+/AT_P!S]*3_ (1T
M_P!S]*:BQ^WI]SS;^SY_>E_LZ?WKTD>'3_<_2G?\(\?[GZ4^5B=>GW/,_P"S
MI_>D^P3^]>FGP\?[GZ5&?#I_N?I3Y6+ZQ3[GFOV";WI?[/G]Z]'_ .$=/]S]
M*>OAT_W/TI.##ZQ3[GFO]G3_ .U1_9T_O7IO_".G^Y^E(?#I_N?I4\K']8I]
MSS/^SY_>C^SYO>O2O^$=/]S]*/\ A'3_ '/TJE%C]O3[GFW]G3^]']G3^]>F
M#P\?[GZ4O_"/'^Y^E/E8OK%/N>8G3Y_>D^P3>]>EGPZ?[GZ4S_A'3_<_2CE8
MOK%/N><?8)O>E_LZ?WKT<>'3_<_2I!X=/]S]*EQ8_K%/N>:_V=/[TOV";WKT
MK_A'C_<_2FGP\<_<_2ERL/;T^YYQ]@F]Z3^SY_>O1_\ A'C_ '/TIP\/'^Y^
ME/D8>VI]SS7^SI_>D_LZ?WKTW_A'O]C]*:?#Q_N?I3Y6+ZQ3[GF?V";WI/L$
MWO7I)\.G^Y^E \.G^Y^E'*P^L4^YYK_9T_O2C39_>O3!X=/]S]*=_P ([_L?
MI4N+#V]/N>9C3YQZT[[!-[UZ2?#Q_N?I3?\ A'C_ '/THY&-5J?<\X^P3?[5
M)_9T_P#M5Z2/#Q_N?I3AX>/]S]*I18>WI]SS,Z=/[TG]GS^]>FGP\?[GZ5&?
M#I_N?I3Y6+ZQ#N>:_8)O>E_L^?WKT?\ X1T_W/TIX\.G^Y^E)Q8?6*?<\U_L
MZ?WH_LZ?WKTT>'3_ '/TI/\ A'C_ '/TJ>5C^L4^YYG_ &?/_M4?V?/[UZ4?
M#I_N?I0/#I_N?I3Y6/V]/N>:?V=/_M4?V;/[UZ:/#I_N?I2_\([_ +'Z4N5D
MNM3[GF/]GSCUH^P3^]>EGPZ?[GZ4P^'3_<_2J46'UBGW/-_L$_O1_9T_O7I(
M\.G^Y^E2#PZ?[GZ468>WI]SS/^SI_P#:IPL)AZUZ4?#I_N?I3#X=/]S]*7*Q
M>VI]SSC[#-[T?8)CZUZ+_P (\?[GZ4\>'C_<_2GR,/;T^YYK_9L_O2C3IQ_>
MKTP>'?\ 8_2D/AX_W/TI\K#VU/N>:_89AZTOV*;WKT8^'C_<_2F_\(\W]S]*
M.5A[:GW/.C83^]-.GS^]>DCPZ?[GZ4O_  CIQ]S]*:3,W5I]SS$Z?/\ [5/B
ML)]PZUZ2?#I_N?I2+X=(/W/TK1)G/.K YC3+.4%>M=OI5O( N<U)9Z&4(^3]
M*Z*RT[9CY:U1QU*R)K2)@!6M"I%-AM]HZ5;2/%:(X*E1,E3I4M,44^F<K"EI
M*6D2%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %-*YIU% $#6ZMVJ%K&-NPJY246'SM%'^SH_2C^SHO2KV:,T<
MJ#VLBC_9T?I1_9L?I5[-+2Y4-59=S/\ [+B_NT?V7%_=%:-%'*BO:S[F=_9D
M?H*/[,B_NBM&BBR#VL^YF_V7%_=%']E1>@K2HHL@]K/N9O\ 9<7H*7^S(_[H
MK1HHY4'MI]S._LR+^Z*/[+B_NBM&BCE0_;3[F;_9<7]T4?V7%_=%:5%'*@]M
M/N9O]EQ?W11_9<7]T5I44<J#VT^YF_V7%_=%+_9<7]T5HT4<J#VT^YG?V9'_
M '11_9D7]T5HT460O:S[F;_9<7]T4?V5%Z"M*BCE0>UGW,[^RXO[HH_LR/\
MNBM&BCE0>UGW,[^RXO[HI/[*B_NBM*BBR#VL^YF_V5%_=%+_ &7%_=%:-%%D
M'M9]S._LR/\ NBC^RXO[HK1HHL@]K/N9O]E1>@H_LN+T%:5%'*@]K/N9W]F1
M^@H_LR/^Z*T:*.5#]M/N9W]EQ?W12?V7%_=%:5%'*@]M/N9W]EQ?W11_9D?]
MT5HT4<J#VT^YG?V7%_=%)_947]T5I4460O:S[F;_ &5%Z"E_LN+T%:-%'*@]
MK/N9W]F1_P!T4?V7%Z"M&BERH?MI]S-_LN+^Z*7^RXO[HK1HI\J#VT^YG?V9
M'_=%']F1?W16C119"]K/N9O]EQ?W11_947H*TJ*+(/:S[F;_ &7%Z"E_LR/T
M%:-%'*@]K/N9W]F1_P!T4?V7%_=%:-%'*A^VGW,[^RXO[HH_LR/T%:-%'*@]
MM/N9W]F1_P!T4?V7%_=%:-%%D+VL^YF_V5%_=%']E1>@K2HHY4'M9]S._LN+
MT%']F1_W16C12Y4/VT^YG?V7%_=%)_9<7]T5I44^5![:?<SO[+B_NBC^S(_[
MHK1HHY4'MI]S._LR+^Z*3^RXO[HK2HHLA>UGW,W^RHO04O\ 9<7H*T:*.5![
M6?<SO[,C_NBC^S(O[HK1HI<J'[:?<SO[+B_NBC^RXO[HK1HI\J#VT^YG?V9'
M_=%']F1?W16C11RH7M9]S-_LN+^Z*/[*B]!6E119![6?<S?[+B]!2_V9'Z"M
M&BCE0>UGW,[^S(_[HH_LN+^Z*T:*.5#]M/N9O]EQ?W12_P!F1^@K1HHY4'MI
M]S._LR/^Z*/[+B_NBM&BBR%[6?<S?[*B_NBC^RHO05I44<J#VL^YG?V7%Z"C
M^S(_[HK1HI<J'[:?<SO[+B_NBD_LN+^Z*TJ*?*@]M/N9W]EQ?W11_9D?]T5H
MT4<J#VT^YG?V9%_=%)_9<7]T5I4460O:S[F;_947H*/[+B]!6E11RH/:S[F=
M_9D?H*/[,B_NBM&BERH?MI]S._LN+^Z*/[+B_NBM&BGRH/;3[F=_9D?H*/[,
MC_NBM&BBR%[6?<SO[+B_NBD_LJ+T%:5%%D'M9]S-_LN+T%+_ &9'Z"M&BCE0
M>UGW,[^S(_[HH_LN+^Z*T:*.5#]M/N9O]EQ?W12_V7%_=%:-%'*@]M/N9W]F
M1_W11_9<7]T5HT460O:S[F;_ &5%_=%']E1>@K2HHL@]K/N9W]EQ>@H_LR/^
MZ*T:*.5#]M/N9W]EQ>@I/[+B_NBM*BCE0>VGW,[^RXO[HH_LR/T%:-%'*@]M
M/N9W]F1?W12?V7%_=%:5%%D+VL^YF_V5%Z"C^RXO05I44<J#VL^YG?V9'Z"C
M^S(O[HK1HI<J'[:?<SO[+B_NBC^RXO[HK1HI\J#VT^YG?V9'Z"C^S(_[HK1H
MHLA>VGW,[^RXO[HI/[*B_NBM*BBR#VL^YF_V7%Z"E_LR/T%:-%'*@]K/N9W]
MF1_W11_9<7]T5HT4<J'[:?<S?[+B_NBE_LN+^Z*T:*.5![:?<SO[,C_NBC^S
M(O[HK1HHY4+VL^YF_P!EQ?W11_947H*TJ*.5![6?<SO[+B]!1_9D?]T5HT4<
MJ'[:?<SO[+B]!2?V7%_=%:5%'*@]M/N9W]EQ?W11_9D?]T5HT4<J#VT^YG?V
M9%_=%)_9<7]T5I4460O:S[F;_947H*/[+B]!6E11RH/:S[F=_9D?H*/[,C_N
MBM&BERH?MI]S._LN+^Z*/[+B_NBM&BGRH/;3[F=_9D7]T4?V9'_=%:-%+E0>
MVGW,[^RXO04G]E1>@K2HI\J%[6?<S?[+B]!2_P!F1?W16C11RH/:S[F=_9D?
M]T4G]EQ?W:T:*.5![:?<S?[+B_NTO]EQ?W16A2T<J%[:?<S_ .S(_P"Z*/[,
MB_NBM"EHLA^VGW,W^RXO[HH_LJ+^Z*TJ*+(/:S[F;_9<7]T4O]EQ?W16C119
M![6?<S?[+B_NBC^RHO[HK2HHLA>TEW*"Z?&O:IUME7M5BBG87,R,1@4[:*=1
M0*[$Q2T44""BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBDH 6BDS10*XM%%% PHHHH **** $HQ2T4!88::34A%,*T"L,W4\&DVT
MX+0.PX4M(*6@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BDS2TK@%%%%,
M HHHH **** "BBB@ HHHH *3%+10 F*,4M% K!1110,**** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH *2EHH ;2TM% K"4M%% PHHHH **** "BBDS0 M%)FEH **** "BC-
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4E+12L E+1118 HHHI@%%%%*X!12
M44K@+124M.X!1113 **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
MK3>II/[5F]379_\ "&_['Z4?\(;_ +'Z4<H?68G&?VO,.YH_MB;U-=D?!O\
ML?I2?\(9_L?I2<&+ZS$X[^V)O4T?VM-ZFNQ_X0S_ &/TIW_"&_['Z4*+#ZS$
MXW^U9O4TO]KS>IKL?^$-_P!C]*/^$-_V/TI\K']9B<?_ &Q-ZFD_M>;U-=C_
M ,(;_L?I1_PAO^Q^E'*P^LQ.-_M6;U-)_:TWO79_\(;_ +'Z4G_"&_['Z4<H
M?68G&_VQ-ZFE_MB;U-=A_P (9_L?I1_PAG^Q^E'(2\3$Y#^UYO4T'5IL=378
M_P#"&_['Z4?\(=_L?I2Y2'7B<2VKS#N:$UF;=U-=FW@O/\'Z4B^"\'[GZ5HD
M+VT3'L-4E8C)-=9I]T[@9J.U\*^61\OZ5O6FC^5CBJ(=6)8MG) K2B-1Q6FT
M#BK218I&$YIDB=*?30,4ZF8L****!!1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 T@'M2;%]*=24Q-C?+
M3TH\I?2G4M )L;Y2>E'E)Z4^BD,C\E/04>2GH*DHH 9Y2>E'E)Z4^B@!GE)Z
M4GDIZ"I** &>4GI1Y2>E/HH 9Y2>E'E)Z4^B@!GE)Z4>4GI3Z* &>4GI1Y2>
ME/HH C\E/04OE)Z4^B@!GE)Z4>4GI3Z* &>4GI2>2GH*DHH 9Y2>E'E)Z4^B
M@!GE)Z4GE)Z"I** (_)3T%+Y2>E/HH 9Y2>E'E)Z4^B@"/R4]!1Y2>@J2B@!
MGE)Z4>4GI3Z* &>4GI2>2GH*DHH 9Y2>E'E)Z4^B@!GE)Z4GE)Z"I** (_)3
MT%+Y2>E/HH 9Y2>E'E)Z4^B@"/R4]!1Y2>@J2B@!GE)Z4>4GI3Z* &>4GI2>
M2GH*DHH 9Y2>E'E)Z4^B@!GE)Z4GE)Z"I** (_)3T%+Y2>E/HH 9Y2>E'E)Z
M4^B@"/R4]!1Y2>@J2B@!GE)Z4>4GI3Z* &>4GI1Y2>E/HH 9Y2>E'E)Z4^B@
M!GE)Z4>4GI3Z* (_)3T%+Y2>E/HH 9Y2>E'E)Z4^B@!GE)Z4>4GI3Z* &>4G
MI1Y2>E/HH 9Y2>E)Y*>@J2B@!GE)Z4>4GI3Z* &>4GI2>4GH*DHH C\E/04O
ME)Z4^B@!GE)Z4>4GI3Z* (_)3T%'E)Z"I** &>4GI1Y2>E/HH 9Y2>E)Y*>@
MJ2B@!GE)Z4>4GI3Z* &>4GI2>4GH*DHH C\E/04OE)Z4^B@!GE)Z4>4GI3Z*
M (_)3T%'E)Z"I** &>4GI1Y2>E/HH 9Y2>E)Y*>@J2B@!GE)Z4>4GI3Z* &>
M4GI1Y2>E/HH C\E/04OE)Z4^B@!GE)Z4>4GI3Z* (_)3T%'DIZ"I** &>4GI
M1Y2>E/HH 9Y2>E)Y*>@J2B@!GE)Z4>4GI3Z* &>4GI1Y2>E/HH C\E/04OE)
MZ4^B@!GE)Z4>4GI3Z* (_*3T%'DIZ"I** &>4GI1Y2>E/HH 9Y2>E)Y*>@J2
MB@!GE)Z4>4GI3Z* &>4GI1Y2>E/HH C\E/04OE)Z4^B@!GE)Z4>4GI3Z* (_
M*3T%'DIZ"I** &>4GI1Y2>E/HH 9Y2>E)Y*>@J2B@"/RD]!2^4GI3Z* &>4G
MI1Y2>E/HH C\E/04OE)Z4^B@!GE)Z4>4GI3Z* &>4GI1Y2>E/HH 9Y2>E'E)
MZ4^B@!GE)Z4GDIZ"I** (_*3T%+Y2>E/HH 9Y2>E'E)Z4^B@!GE)Z4>4GI3Z
M* &>4GI1Y2>E/HH 9Y2>E'E)Z4^B@!GE)Z4>4GI3Z* &>4GI2>4GH*DHH 9Y
M:^E+L%.HH 3 I:** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHI*0"T4E%%P%HHHI@%%%% !1110 444E*X"T4E+1< HHHI@%%%%
M!1110 44E%*X"T4E+1< HHHI@%%%% !1110 44E%*X"T444P"BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BDHJ;@+
M1115 %%%% !1110 444E*X"T4E+1< HHHI@%%%% !1110 44E%*X"T4E+0F
M4444P"BBB@ HHHH **2BIN M%%%4 4444 %%%% !1124K@+124M%P"BBBF 4
M444 %%%% !1124K@+124M%P"BBBF 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1136.!0 N:-PJK)-M[U3
MDO0O>@I1;-7>/6DWBL,ZB/[U-.I#^]2*Y&;WF+1O'K6!_:0_O4HU(?WJ5Q^S
M9O[QZT;QZUA?VD/[U']I#^]1S![)F[O'K1O'K6'_ &D/[U(=2']ZCF#V3-W>
M/6DWCUK!.IC^]2?VF/[U',/V+-_>/6C>*PAJ0_O4X:B/[U',/V+-O>*-X]:Q
M/[1']ZD_M(?WJ7.+V3-W>*-XK"_M(?WJ/[2']ZCF%[)F[O%&\>M81U(?WJ:=
M3']ZG</9,W]X]:3>/6L#^U!_>H_M,?WJ.8?L6;^\4;Q6"-2']ZG?VD/[U+G0
M>R9N;QZT;QZUA_VD/[U']I#^]1SH7LF;F\>M&\5A_P!I#^]1_:(_O4^8?LF;
MF\4;QZUA'4A_>IO]IC^]1S![)F_O'K1O%<__ &F/[U.&I#^]1S![)F]O%&\>
MM8?]HC^]1_:0_O470>S9N;QZTN]:PO[2']ZC^TA_>J>9"]DS=WBC>*PO[2']
MZ@ZD/[U5</9,W=X]:3>/6L$ZF/[U-_M0?WJ.8?L6=!O'K1O%8(U(?WJ<-1']
MZCF#V3-S>/6C>/6L/^T1_>H_M(?WJ3D@]DS=WK1O%87]I#^]1_:0_O4<R%[)
MF[O%&\>M87]I#^]33J8_O4[A[)F_O'K2;QZU@?VH/[U']IC^]1S#]BS?WBC>
M*PO[2']ZE_M$?WJ.8/9,W-X]:-X]:P_[2']ZC^TA_>I<R%[)FYO'K1O%8?\
M:0_O4?VB/[U-20>R9N;Q1O'K6%_:0_O4W^TQ_>HYA^R9O[QZT;Q7/_VF/[U.
M&I#^]1S![)F]O%&\5A_VB/[U']HC^]1S(/9,W-X]:-X]:P_[2']ZC^TA_>I<
MR%[)FYO%&\5A_P!HC^]2'41_>I\P_9,W=X]:-X]:P3J8_O4W^TQ_>HY@]DSH
M-X]:-XK!&IC^]2C41_>HY@]DS=WBC>/6L/\ M$?WJ/[2']ZCF%[)FYO'K1O%
M8?\ :0_O4?VD/[U','LF;F\4;Q6'_:(_O4TZD/[U',/V3-[>/6C>/6N?_M,?
MWJ7^TQ_>HY@]BS?WBC>*PO[2']ZE_M$?WJ.8/9,W-X]:-X]:P_[2']ZC^TA_
M>I<PO9,W-X]:-XK#_M(?WJ/[1']ZGS![)FYO%&\>M87]I#^]3?[3']ZCF'[)
MF_O'K1O%<_\ VF/[U.&I#^]1S![)F]O%&\5A_P!HC^]1_:(_O4<P>R9N;QZT
MN]:PO[2']ZC^TA_>I<R%[)F[O%&\5A?VD/[U!U(?WJ=P]DS=WCUI-X]:P3J8
M_O4W^U!_>HYA^Q9T&\>M&\5@#4Q_>IPU$?WJ.8/9,W=XHWCUK#_M$?WJ/[2'
M]ZDY(7LV;N]:-XK"_M(?WJ/[2']ZCF0>R9N[Q1O'K6%_:0_O4AU,?WJ=P]DS
M>WBDWCUK _M0?WJ/[3']ZCF'[%F_O%&\5@C4A_>IW]HC^]1S![)FYO'K1O'K
M6'_:0_O4?VD/[U+F0O9,W=ZT;Q6%_:0_O4?VD/[U',@]DS=WBC>/6L'^TA_>
MIIU,?WJ?,/V3-_>/6C>*Y_\ M,?WJ<-2']ZCF#V3-[>*-X]:PQJ(_O4?VB/[
MU','LF;F\>M+O6L+^TA_>H_M(?WJ7,A>R9N[Q1O%87]I#^]0=2']ZG</9,W=
MX]:-X]:P#J8_O4W^U!_>HYA^Q9T&\>M&\5@#4Q_>IW]HC^]1S![)F[O%&\>M
M8?\ :(_O4?VD/[U',A>R9N;QZT;QZUA_VD/[U']I#^]2YD'LF;F\4;Q6'_:(
M_O4G]I#^]3YA^R9N[QZT;QZU@?VF/[U)_:8_O4<P>Q9T&\4;Q6"-2']ZG?VB
M/[U','LF;F\4;QZUA_VD/[U']I#^]2YD+V3-S>/6C>*P_P"TA_>H_M$?WJ:D
M@]DS<WBC>/6L(ZB/[U-.IC^]1S#]DS?WCUHWCUKG_P"TQ_>I1J8_O4<P>Q9O
M[Q1O%80U(?WJ7^T1_>I<Z#V3-S>/6C>/6L+^TA_>I?[2']ZCG0O9,W-XHWBL
M/^T1_>H.HC^]3YA^R9N;Q1O'K6"=2']ZF_VF/[U','LF=!O'K1O%8']IC^]2
M_P!I#^]1S(/9,WMXHWCUK#_M(?WJ3^TA_>I<Z#V3-W>/6C>/6L/^TA_>H_M(
M?WJ.9"]DS<WBC>*P_P"T1_>I/[2']ZGS#]DS=WCUHWCUK _M,?WJ3^TQ_>HY
M@]BSH-XHWBL$:D/[U+_:0_O4N=![)F[O%+O'K6%_:(_O4?VD/[U'.A>R9N[Q
M1O%87]I#^]1_:0_O4^8/9,W=XHWCUK".I#^]33J8_O47#V3-_>*-X]:Y[^U!
M_>IPU,?WJ.8?L6;^\4;Q6#_:0_O4O]I#^]2YQ>R9N[Q1O%87]I#^]1_:0_O4
M<X>R9N[Q1O%87]I#^]0=2']ZGS![)F[O'K2;QZUSYU0#^*F_VJ,_>IW#V3.C
MWBER*Q(M0#'[U7X;@-WIDN#1=HIJG-.H("BBB@ HHHH **** "BBB@ HHHH
M**2BIU 6BDI:: ****8!1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1129H 6BDS1F@+BT4F:6
MBX!5>9]JFIZKW"%E-*XT85_?>6#S7+WNN;"?FKH=2L7D!QFN2O\ 0II"< T7
M-8M%9_$?/WJC_P"$B_VJJ/X:N">C4W_A&;C^ZU0[FO,B[_PD7^U3?^$DQ_%5
M0^&;C^ZU,/ABX]&J=1J2+O\ PDV/XJ;_ ,)1_M50/A>X_NM49\+7/]UJ=F:<
MT32_X2G_ &J:?%/^U6:?"MS_ '6I/^$5N?[K468<T32_X2C_ &OUI?\ A)_]
MK]:S?^$6N?1J7_A%KG'W6I69:G$TQXH_VJ=_PE/^U^M97_"+7/HU'_"+7/\
M=:E9CYXFK_PE7^U2?\)3_M5E_P#"+7/]UJ/^$6N?[K4<K%S1-/\ X2C_ &Z/
M^$I_VOUK,_X1:Y_NM1_PBUS_ '6HLQ7@:?\ PE'^U^M'_"39_BK,'A:Y_NM3
MAX6N/[K4]0YHFA_PDI_O4?\ "38_BJA_PBUQ_=:D/A:X_NM4V8N>)H?\)3_M
M4?\ "5?[59A\*W/]UJ3_ (16Y_NM3Y1<T35_X2C_ &J7_A*/]JLL>%KG^ZU+
M_P (M<^C4<K)YT:7_"4_[='_  E7^U68?"US_=:F_P#"*W/]UJ:3&I1-3_A*
M,_Q4?\)-_M5FCPM<_P!UJ>/"]Q_=:G9E<\2__P )+_M4?\)1C^*J)\+W']UJ
MC/A:Y]&HLPYXFG_PE7^U2_\ "49_BK)_X16Y_NM3QX6N?[K4K,7-$U/^$G_V
MJ/\ A)_]JL[_ (1>X_NM2'PM<?W6HY0YHF@?%/\ M4G_  E/^U68?"MSZ-0/
M"MSZ-3LPYHFG_P )-G^*C_A)?]JL\>%KG^ZU._X1>X]&I68^>)>_X2?'\5'_
M  E/^U6>?"US_=:F?\(K<^C4[,7-$U/^$I_VJ=_PD_\ M5E#PM<_W6IX\+W'
M]UJ5@YHFE_PD_P#M4A\4_P"U6>?"]Q_=:HSX6N?[K46#FB:7_"4_[5'_  D^
M?XJR_P#A%;GT:GCPM<_W6IV8<T31_P"$E_VJ/^$FQ_%5$>%[C^ZU(?"UQ_=:
ME9CYXE__ (2G'\5+_P )5_M5EGPK<^C4#PK<_P!UJ=F+FB:O_"49_BI?^$G_
M -JLP>%KG^ZU._X1>X_NM2Y0YHFA_P )1C^*D_X2K_:K./A:Y_NM3#X5N?1J
M+,.:)I_\)3G^*C_A)L_Q5F#PK<^C5(/"UQ_=:G9CYXE__A)?]JE_X2C'\7ZU
M0/A>X]&IA\+7/]UJ5F'/$TO^$J_VJ/\ A*?]HUE?\(K<_P!UJ7_A%KGT:G87
M-$U/^$H_VJ/^$I_VJS/^$6N?[K4'PM<_W6HY2N:)I_\ "5?[5)_PE/\ M5F?
M\(K<_P!UJ!X5N?[K469/-$T_^$GS_%2_\)+_ +59P\+7/]UJ=_PB]QCHU*S'
MSQ+W_"3X_BH_X2G_ &OUK//A:Y_NM3#X5N?[K4[,7-$U/^$I_P!JG#Q/_M5D
MCPK<_P!UJD'A>Y_NM2L'-$TO^$G_ -JD_P"$IQ_%6>?"]Q_=:F'PM<_W6HLP
MYHFE_P )5_M4G_"49_B_6LO_ (16Y_NM3QX6N?[K4[,.:)H_\)+_ +5'_"3?
M[541X7N/[K4A\+7']UJ5F/GB7_\ A*,?Q?K2_P#"5?[599\*W/HU \*W/HU.
MS%S1-7_A*,_Q4O\ PD_^U66/"US_ '6I_P#PB]Q_=:ERAS1-#_A*,?Q4G_"5
M?[59Q\+7/]UJ8?"MS_=:BS#FB:?_  E.?XJ/^$FS_%68/"MSZ-4@\+7']UJ=
MF'/$O_\ "2_[5'_"48_BJC_PB]Q_=:F'PM<_W6HLQ\\32_X2K_:I?^$I_P!J
MLG_A%;GT:G#PM<_W6I68N:)J_P#"3_[5'_"3_P"U6:/"]Q_=:@^%[C^ZU'*'
M-$T#XI_VJ3_A*?\ :K-/A:Y_NM2?\(K<_P!UJ=F'-$T_^$GS_%1_PDO^U6</
M"US_ '6I_P#PB]QCHU*S'SQ+W_"38_BH_P"$IQ_%6>?"UQ_=:F'PK<_W6IV8
MN:)J?\)5_M4?\)3_ +597_"*W/\ =:G#PM<_W6HY1J433_X2C_;H_P"$I_VJ
MS?\ A%KGT:F_\(M<_P!UJ.4'*)I_\)5_M4?\)1G^*LO_ (16Y_NM3AX6N?[K
M468N:)I?\)+_ +5'_"3?[541X7N/[K4A\+7']UJ5F/GB:'_"48_BH_X2K_:K
M,/A6Y]&IO_"*W/\ =:G9BYHFK_PE/^T:/^$H_P!NLO\ X1:Y_NM3O^$6N?1J
M.4:E$TO^$I_VJ3_A*O\ :_6LW_A%KG^ZU-_X16Y_NM18'*)J?\)3G^*C_A)L
M_P 59@\*W/HU2#PM<?W6HLQ<\2__ ,)+_M4?\)/C^*J/_"+W'HU,/A:Y_NM2
MLQ\\32_X2G_:H_X2K_:K*/A6Y_NM2_\ "*W/HU.PN:)J?\)1_M4?\)1_M5F?
M\(M<_P!UJ/\ A%KG^ZU'*5S1-/\ X2K_ &Z3_A*?]JLS_A%;G^ZU(/"MS_=:
MBS)YHFI_PD^?XJ/^$E_VJSAX6N?1J?\ \(O<>C468^>)>_X2;'\5'_"4_P"U
M5 ^%KC^ZU1GPK<^C468<\34_X2G_ &J</%&?XJR1X5N?[K4\>%KG^ZU*S%S1
M-/\ X2?_ &J3_A*,?Q5G_P#"+W'HU,/A:Y_NM1RAS1-+_A*O]JD_X2C/\59G
M_"*W/HU*/"USZ-3LPYHFE_PDW^U1_P )+_M50'A:X_NM2GPO<?W6I68^>)>_
MX2C'\5+_ ,)5_M5F'PM<^C4W_A%;G^ZU.S%S1-;_ (2C/\5+_P )/_M5ECPM
M<_W6I_\ PB]Q_=:E8.:)HGQ/C^*F_P#"4_[59Y\+7/\ =:HSX5N?1J+,.:)I
M_P#"4_[5'_"39_BK,'A6Y]&IX\+7/]UJ=F'-$T/^$E/]ZC_A)\?Q51_X1>X_
MNM3#X6N?[K4K#YXFC_PE/^U2CQ3_ +591\*W/]UJ4>%;G^ZU+E%S1-8>)_\
M:H_X2?\ VJS1X6N?1J#X7N/1J5F'-$T?^$I_VJ3_ (2K_;K,/A:Y_NM3?^$5
MN?[K523#FB:G_"49_B_6C_A)C_>K.'A:Y_NM3O\ A%KCT:D[CYXE_P#X2;_:
MH_X2G'\59Y\+7']UJ8?"MS_=:BS#GB:?_"4_[5.'BC_:K*_X16Y_NM3QX6N?
M1J'%BYHFG_PD_P#M4G_"4?[59W_"+W'HU-/A:Y]&I),.:)I?\)5_MTG_  E&
M?XOUK+_X16Y_NM2CPK<_W6JK,.:)I_\ "3?[5'_"3?[54!X6N/[K4?\ "+7'
M]UJ6H^>)?_X2C'\5'_"4_P"U6:?"MS_=:F_\(K<_W6HY6+FB:O\ PE'^U3O^
M$G_VJRAX6N?[K4\>%[CT:DXL.:)H_P#"4?[5(?%/^U6<?"USZ-3#X5N?[K4T
MF'-$T_\ A*<_Q4?\)/G^*LP>%;G^ZU.'A:X_NM3=PYHFC_PDI_O4?\)/C^*J
M'_"+7'HU-/A:X_NM2LQ\\30_X2G_ &J</%/^U67_ ,(K<_W6H'A6Y_NM1RBY
MHFJ/$_\ M4O_  D_^U68/"US_=:E/A>X_NM2LPYHFB?%/^U3#XJ_VJSCX6N?
M[K4P^%;G^ZU4DPYHE]O%/^U0GB8EOO5G'PI<_P!UJ?'X5N0WW6JM1.2.HL->
MWD?-75Z?J6\#FN)T_P /3QD9!KKM.TV2,#(-.[,VXLZ>&YW <U:63-9\$#*!
M5U$(IW,9)%@&EIB]*?3N9L****8@HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ I*6B@!E%.Q1BE85A*6EHI6&)2$9I:*0R)H$;J*A:
MPB;JHJW2TT!0_LR#^X*3^S(/[@J_3#3&4_[,@_N"C^S(/[@JWS3A0!2_LJ#^
MX*3^RH/[@K0HI"NS/_LF#^X*/[)M_P"X*T:*879G?V3;_P!P4?V3!_<%:-%
M<S,[^R8/[@H_LF#^X*T:2D%V9_\ 9,']P4?V3!_<%:%+30<S,[^R8/[@H_LF
M#^X*T:*879G?V3;_ -P4O]E0?W!6A118+LS_ .RH/[@I/[*@_N"M TAHL%V9
M_P#94']P4?V5!_<%7S24[#U*7]E0?W!1_94']P5?%+2L*[,_^R8/[@H_LF#^
MX*T:*+!=F=_9,']P4O\ 94']P5H44!=F?_94']P4G]DP?W!6C24@NS/_ +)@
M_N"C^R8/[@K0HI!=E#^RH/[@H_LJ#^X*T**H+LSO[)@_N"C^R8/[@K1HH"[,
M_P#LJ#^X*/[*@_N"M"B@+LSO[*@_N"C^R8/[@K1I*D+LS_[)@_N"E_LJ#^X*
MOTM,+LS_ .RH/[@I/[)@_N"M&BF%V9W]DP?W!1_9,']P5HT4!=F?_94']P4?
MV5!_<%:%%(+LSO[)@_N"C^R8/[@K0HI7"[,_^RH/[@I?[*@_N"M"BF%V9_\
M94']P4G]DP?W!6C13"[,[^R8/[@I?[*@_N"M"B@+LS_[*@_N"D_LF#^X*T:2
MDPNS/_LF#^X*/[)@_N"M"BE<+LS_ .R8/[@H_LF#^X*T:*879G?V3;_W!1_9
M,']P5H44KA=F?_94']P4O]E0?W!6A13"[,[^RH/[@H_LF#^X*T:2@+LS_P"R
M8/[@I?[*@_N"K]+0%V9_]E0?W!2?V3!_<%:-%,+LSO[)@_N"C^R8/[@K1HH"
M[,_^RH/[@H_LJ#^X*T**079G?V3!_<%']DP?W!6A12N%V9_]E0?W!2_V5!_<
M%:%%,+LS_P"RH/[@I/[)@_N"M&BF%V9W]DP?W!2_V5!_<%:%% 79G_V5!_<%
M)_9,']P5HTE)A=F?_9,']P4?V3!_<%:%%(+LH?V5!_<%']E0?W!6A15!=F=_
M9,']P4?V3!_<%:-% 79G_P!E0?W!1_94']P5H44!=F?_ &5!_<%)_9,']P5H
MTE(+LS_[)M_[@H_LF#^X*T*6A!=F=_9,']P4?V3;_P!P5HT4PNS._LF#^X*/
M[)@_N"M&B@+LS_[*@_N"C^RH/[@K0HI!=F=_9,']P4?V3!_<%:%%*X79G_V3
M!_<%']DP?W!6C13079G?V3!_<%']DV_]P5HT4PNS._LF#^X*7^RH/[@K0HH"
M[,_^RH/[@I/[*@_N"M&BD%V9W]DP?W!1_9,']P5H44KA=F?_ &3!_<%']DP?
MW!6C15!=F=_9-O\ W!1_9,']P5HT4!=F=_94']P4O]E0?W!6A10%V9_]E0?W
M!2?V3!_<%:-)2"[,_P#LF#^X*7^RH/[@J_2T!=F?_94']P4G]DP?W!6C13"[
M,[^R8/[@H_LF#^X*T:* NS/_ +*@_N"C^RH/[@K0HH"[,[^R8/[@H_LF#^X*
MT**FX79G_P!DP?W!2_V5!_<%:%%,+LS_ .RH/[@I/[)@_N"M&BF%V9W]DP?W
M!2_V5!_<%:%% 79G_P!E0?W!1_94']P5H44!=F=_9,']P4?V3!_<%:-% 79G
M?V5!_<%+_94']P5H44K!=F=_9,']P4?V3!_<%:-%.P79G?V3!_<%+_94']P5
MH44K!=F=_94']P4?V3!_<%:-%.P79G?V3!_<%']E0?W!6C10%V9W]E0?W!1_
M94']P5HT46"[,[^R8/[@H_LF#^X*T:*+!=F?_94']P4?V5!_<%:%%%@NS._L
MF#^X*/[)@_N"M&B@+LSO[)@_N"E_LJ#^X*T**+!=F?\ V5!_<%)_9,']P5HT
M46"[,[^R8/[@I?[*@_N"M"BBP79G_P!E0?W!1_94']P5H446"[,[^R8/[@H_
MLF#^X*T:* NS._LJ#^X*7^RH/[@K0HI6"[,[^R8/[@H_LF#^X*T:*879G?V1
M!_<% TF ?P"M&B@+LI+IT*]%%3+;(O05/10%V,$8':EVTZBE85Q**6BBP!11
M13 **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@!**6DJ;, HHI*:0KCJ*2BF%PHQ2T4#&XI<4M% [A1110(**** "BBB@
M HHHH **** "BBB@ HHHH *3%+10 F*,4M% "8I:** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ I*6BDT E+110@"BBBF 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4F:1FP*KR7 7O0-*Y9S1FLU[
M\ ]:C_M)?6@I09K9HS66-0'K2B_'K2N/V;-/-&:S?MX]:/MX]:+A[.1I9HS6
M=]N'K2?;AZT<R'[*1I9HS6;]O'K2?V@/6ES(?L9&GFC-9G]H#UI?MX]:?,@]
MC(TL^]&:S?MP]:/MX]:7,@]C(TLT9K,_M >M']H#UIW0>QD:>:,UF_;QZT?;
MAZTN9![&1I9HS6;]O'K2?V@/6CF0>QD:>:,^]9G]H#UI?MX]:.9![&1I9HS6
M;]N'K1]O'K1S(7LI&G169]O'K2_;QZT<R#V4C2HK-^WCUI#J"^M',@]C(TZ3
M-9?]HKZT?VB/6CF0>QD:F:,UFB_'K3OMH]:=T'L9&A25G_;AZT?;AZT<R%[&
M1HT5G_;AZT?;AZT<P>QD:-%9IOU]::=07UHNA^QD:>:,UE_VBOK2B_'K2YD'
ML9&GGWHS6=]N'K2?;AZT<R'[&1I9HS69_: ]:/[0'K3N'L9&GFC-9OV\>M'V
MX>M+F0O8R-+-&:SOMP]:/MP]:.9![&1HYHS6=]N'K1]N'K1S(/8R-'-&:SOM
MP]:/MP]:.9![&1HYHS6=]N'K1]N'K1S(/8R-'-&:SOMP]:/MP]:.9![*1HYH
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
M:=AWB=\/$2?W_P!:=_PD:?W_ -:\\,%[Z&D$-]Z&B["\3T7_ (2)/[_ZT?\
M"0)_>_6O/E@O?0T_R+WT-3J/W3OO^$A3^_\ K1_PD2?WQ^=< 8+WT-,,-[Z&
MJ5Q^Z>@'Q"G]_P#6F'7U_O?K7!""]]#3Q;WGH:=F'NG<#7E_O_K3QX@0?Q_K
M7#?9[ST-,-O>^AJ6F'NG?#Q$G]\?G0?$*?W_ -:\^\F]]#2B"]]#2U'[IWW_
M  D"?WOUH_M]?[WZUP@@O/0TOV>\]#1=A>)W@\0)_?\ UI?^$A3^]^M<#Y%[
MZ&D\B]]#2NR;Q.__ .$A3^]^M'_"0I_?_6N \B]]#2^1>^AH5Q7B=]_PD*?W
M_P!:/^$A3^_^M<#Y%[Z&CR+WT-/4+Q.^_P"$A3^_^M'_  D*?W_UK@?(O?0T
M>1>^AHU"\3OO^$A3^]^M'_"0I_?_ %K@?(O?0TA@O?0T:A>)W_\ PD2?W_UI
M/^$A3^_^M>?^1>^AI?(O?0TKLGFB=_\ \) G][]:3_A($_O?K7!>1>^AH\B]
M]#3U#W3OO^$A3^]^M+_PD*?W_P!:X#R+WT-)Y%[Z&G9AS1/0/^$A3^_^M'_"
M0I_>_6N \B]]#2^1>^AI68[Q.^_X2%/[_P"M+_PD*?W_ -:X#R+WT-'D7OH:
M-1WB=Z?$"?WZ:?$"?WOUKA/(O?0T>1>^AIZCO$[O_A($_O\ ZTX>($_O?K7!
M?9[WT-'D7OH:+L.:)WX\0I_?_6E_X2%/[_ZUY_Y-[Z&CR;WT-/47-$[_ /X2
M!/[_ .M)_P )"G]_]:X+R+WT-(8+WT-'*%XG??\ "0I_?_6D_P"$B3^_^M>?
MF"]]#2>1>^AHLQ^Z>@'Q"G]_]:3_ (2!/[_ZUP(@O?0T[[/>^AI:CO%'>CQ
MG]_]:>/$*?W_ -:X#R+WT-'D7OH:+L7-$] _X2%/[_ZTG_"0)_?_ %K@/)O?
M0TODWOH:>K%>)WO_  D"?WOUH_X2%/[_ .M<%Y%[Z&F&"]]#1RA>)Z!_PD2?
MW_UII\0I_?\ UKS_ ,B]]#2^1>^AI697NG??\) G]_\ 6@>($_O_ *UP0@O?
M0T[[/>^AHU%S1.^'B!/[_P"M._X2%/[_ .M>?^1>^AH\F]]#1=AS1/0#XA3^
M_P#K2?\ "0)_>_6N!\F]]#1Y%[Z&G9L5XG>_\)"G]_\ 6C_A(D_O_K7 &"]]
M#33!>^AHY1KE/0#XB3^_^M-/B%/[_P"M<!Y%[Z&G""]]#2LQWB=[_P ) G]_
M]:</$"?W_P!:X'[/>^AI?(O?0T78N:)WX\0I_?\ UI?^$A3^_P#K7G_DWOH:
M/)O?0T[L7-$[_P#X2!/[_P"M)_PD*?WOUK@O(O?0TA@O?0T<H7B=]_PD*?WQ
M^=)_PD2?W_UK@#!>^AIODWOH:+,:Y3T ^(4_O_K2?\) G]_]:X$07OH:<+>]
M]#2U'>*.]'B!/[_ZTX>(4_OC\ZX'R+WT-'D7OH:+L7-$] _X2%/[_P"M(?$*
M?W_UK@/)O?0TODWOH:>K%>)WO_"0)_>_6C_A(4_O_K7!>1>^AII@O?0T<H7B
M=_\ \)$G]_\ 6D_X2%/[_P"M>?&"]]#2^1>^AI697NG??\) G]_]:!X@3^_^
MM<$(+WT-.^SWOH:-1<T3O1X@3^_^M/\ ^$A3^_\ K7G_ )%[Z&CR;WT-%V'-
M$] _X2%/[_ZTG_"0)_>_6N!\F]]#1Y%[Z&G9L5XG>_\ "0I_?_6C_A(D_OC\
MZX P7OH::8+WT-'*"Y3T ^(D_O\ ZTT^(4_O_K7 >1>^AI1!>^AI697NG??\
M) G]_P#6G#Q G]_]:X'[/>^AI?(O?0T78N:)WX\0I_?_ %I?^$A3^_\ K7G_
M )-[Z&CR;WT-.[%S1.__ .$@3^_^M)_PD*?WOUK@O(O?0TGD7OH:+!>)WW_"
M0I_?'YTG_"1)_?\ UK@#!>^AIOD7OH:+#7*>@'Q"G]_]:3_A($_O_K7 B"]]
M#3A!>^AI:CO%'>#Q G]_]:>/$*?W_P!:X'[/>^AH\B]]#1=BYHGH'_"0I_?_
M %H/B%/[_P"M>?\ DWOH:7R;WT-/5BO$[[_A($_O?K2?\)"G]_\ 6N"\B]]#
M33!>^AHY0O$[_P#X2)/[_P"M(?$*?W_UKSXP7OH:7R+WT-*S'[IWW_"0)_?_
M %H_X2!/[_ZUP0@O?0T[[/>^AHU#FB=Z/$"?W_UI_P#PD*?W_P!:\_\ (O?0
MT>3>^AHNPYHGH'_"0I_?_6D_X2!/[WZUP/DWOH:/(O?0T[7%>)WO_"0I_?\
MUH_X2)/[X_.N!,%[Z&F&"]]#1R@N4] /B)/[_P"M-/B%/[_ZUP'D7OH:407O
MH:5F5[IWW_"0)_?_ %I1X@3^_P#K7!?9[WT-+Y%[Z&B[%S1._'B%/[_ZTO\
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
M?E1_PBT']T?E72[J4&CE0>UD<V/"\/\ ='Y4?\(O#_='Y5TXI:.5![61R_\
MPBT/]T?E1_PBT/\ ='Y5U-%+E0>TD<M_PBT/]T?E1_PBT']T?E74T4^5"]I(
MY;_A%H/[H_*C_A%H/[H_*NIHHLA^TD<M_P (M!_='Y4?\(M!_<'Y5U-%%D'M
M)'+?\(M#_='Y4G_"+0_W!^5=5119"]I(Y7_A%8/[@_*C_A%H?[@_*NJHHY4'
MM)'+?\(M#_='Y4?\(M#_ '!^5=3119![21RO_"+0_P!P?E1_PBT/]P?E7544
M60>TD<K_ ,(M#_<'Y4O_  BT/]T?E74T460>TD<M_P (M!_<'Y4?\(M!_='Y
M5U-%%D/VDCEO^$6@_NC\J/\ A%H?[@_*NIHHL@]I(Y;_ (1:'^X/RH_X1:'^
MZ/RKJ:*+(/:2.6_X1:'^Z/RH_P"$6A_NC\JZFBBR%[21RW_"+P_W!^5'_"+0
M_P!P?E74T46#VDCE?^$6@_N#\J/^$5@_N#\JZJBBP_:2.5_X1:'^X/RI?^$6
MA_N#\JZFBBR#VDCEO^$6A_N#\J/^$6A_NC\JZFBBR%[21RW_  BT/]T?E1_P
MB\/]P?E74T460>TD<M_PBT/]P?E2?\(M#_='Y5U5%%@]I(Y7_A%8/[@_*C_A
M%8/[@_*NJHHL/VDCEO\ A%H/[@_*C_A%H?[@_*NIHHL@]I(Y;_A%H?[H_*C_
M (1:'^Z/RKJ:*+(7M)'+?\(M#_='Y4?\(O#_ '!^5=3118/:2.6_X1:'^Z/R
MI/\ A%8/[@_*NJHHL/VDCE?^$5@_N#\J/^$6A_N#\JZJBBR#VDCEO^$6A_N#
M\J/^$6A_N#\JZFBBR#VDCEO^$6A_NC\J/^$6A_NC\JZFBBR%[21RW_"+P_W!
M^5'_  BT/]P?E74T46#VDCE?^$6@_N#\J/\ A%8/[@_*NJHHL/VDCE?^$6A_
MN#\J7_A%H?[@_*NIHHL@]I(Y;_A%H?[@_*C_ (1:'^Z/RKJ:*+(7M)'+?\(M
M#_='Y4?\(M#_ '!^5=3119![21RW_"+0_P!P?E1_PBT/]T?E74T46#VDCE?^
M$5@_N#\J/^$5@_N#\JZJBBP_:2.6_P"$6@_NC\J/^$6A_N#\JZFBBR#VDCEO
M^$6A_NC\J/\ A%H?[H_*NIHHLA>TD<M_PBT/]T?E1_PB\/\ <'Y5U-%%@]I(
MY;_A%H?[H_*D_P"$5@_N#\JZJBBP_:2.5_X16#^X/RH_X1:'^X/RKJJ*+(/:
M2.6_X1:'^X/RH_X1:'^X/RKJ:*+(/:2.6_X1:'^Z/RH_X1:'^Z/RKJ:*+(7M
M)'+?\(O#_<'Y4?\ "+0_W!^5=3118/:2.5_X1:'^X/RH_P"$5@_N#\JZJBBP
M_:2.5_X16'^X/RI?^$6@_N#\JZFBBR#VDCEO^$6A_N#\J/\ A%H?[H_*NIHH
MLA>TD<M_PBT/]T?E1_PBT/\ <'Y5U-%%D'M)'+?\(O#_ '!^5)_PBT']T?E7
M54E.P>TD<M_PBL']T?E1_P (K!_<'Y5U%%%A>VD<O_PBT']T?E2_\(M#_='Y
M5U%+2LA^TD<M_P (M#_='Y4?\(M#_='Y5U-%%D'M)'+?\(M#_='Y4?\ "+P_
MW!^5=3119![21RW_  BT/]P?E2?\(K!_<'Y5U5%%A^TD<K_PBL']P?E1_P (
MM#_<'Y5U5%%D'M)'+?\ "+0_W1^5'_"+P_W1^5=324<J%[21R_\ PB\/]T?E
M2?\ "+0?W1^5=111RH7M9',?\(O!_='Y4?\ "+P?W1^5=1118?M)'+?\(M!_
M='Y4G_"*P?W!^5=524[![61R_P#PBT']T?E1_P (M#_='Y5U-%+E0>UD<O\
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
MT'YU\_>?J'JU*)]0_O-0!]!CQU;_ //1?SIX\=V__/1?SKY[$VHG^)J7SM1
MZM0!]!'QW;_\]%_.HSXZM_\ GHOYU\]R7M^G5FJG)K-XG5S0!](#QU!_ST7\
MZ>/'=O\ \]%_.OF8^(+H?\M#2?\ "177_/0T ?3G_"=V_P#ST7\Z:?'=O_ST
M7\Z^:5U^[8\2&K,>J7TG1S0!]$GQU!_ST'YTP^.8/^>@_.O DGU!^C-3]^H^
MK4 >\'QQ!_ST'YU&WCB#_GH/SKPDR:AZM3?-U#U:@#W0^-H3_P M!^=30>,(
MI&QO'YUX*)+_ #U:M737O?,&2: /H2PUY)L885T$%X'3.:\A\/M<97<37H=B
MSB'GTH U+K4EB!R:YV\\3Q0DY<?G5/7;IT1L&O)_$&K3(SX<T >GOXUA4_?'
MYTS_ (3>#_GH/SKYZN=>N0Y^<U5_M^Y_YZ&@#Z1'CB#_ )Z#\Z</'$'_ #T'
MYU\WKKMT3]\U8CU6\?HYH ^BQXY@_P">@_.I!XZM_P#GHOYU\\)>7[=&:IA/
MJ']YJ /H0>.[?_GHOYTC>.[?_GHOYU\_>=J/]YJ/.U'^\U 'O+^.8/\ GH/S
MJ+_A.(,_ZP?G7A)EU#U:F^;J'JU 'O\ 'XY@'_+0?G5M/'EO_P ]%_.OG7S]
M0'\34?:]0'\34 ?1W_">VW]]?SI/^$\MO^>B_G7S:^IWZ]7-5WUR\3JYH ^F
MO^$\M_\ GHOYTX>.[?\ OK^=?+__  D5V#_K#3E\276?]8: /J:+QK;N<;U_
M.M2V\113XPP_.OEK3_$=R9!F0UZ%H&O.Q7<] 'O<%XLHX-6P<BN%T;6%95RU
M=5!J$; <T :-%0I.K=#4H.: %I#2U&\@49- "FHW.T56FU**+J:R;SQ%;QJ?
MG'YT :%QJ"PYR:R+CQ3#!G+C\ZY'6O%$6&VR?K7FNM^)I"6VR?K0![0_CJW4
M_?7\ZC/CVV_YZ+^=?-%SXDNMYQ(:J_\ "1W?_/0T ?3$_CNW*G$B_G6'>^-(
MF!Q(/SKP0:_=N<>8:F2]O)OXC0!ZE>>+%;.)/UK(F\3Y)_>?K7%+;WLOK3_[
M+OF[&@#IV\2'/^L_6I[;Q,0W,GZUR']CWW]T_E36TV]C[&@#U&Q\6JN,R?K7
M0VOC6)0,R#\Z\(;[9#W-1'4KN/\ B- 'T?%XY@'_ "T'YU=B\=6Y_P"6B_G7
MS#_;EVO\9J6+Q#=!O]8: /JJW\7038PX_.M:WUA)L8(KYFTCQ-*"NZ0_G7HF
MB^*%PNZ3]: /9HYPXZU,'KB[#Q)"ZK\X_.MVVU2.7&&H V@:7-5XI0XX-3B@
M!U%)2T (3@54N;D1#DU9?[M<_K$I5#@T 07NNQP9RPK"N/&,,9(+C\ZY#Q)J
M,L>[#&O+M6URX60X<]: /<F\;P9_U@_.D'C:$G_6#\Z^<FU^ZS]\U)#KUSN^
M^:5A6/IFT\4Q2D8<?G706>J+,!@U\W:/X@D#+N<UZ1H?B5 %W/\ K18+'L"/
MO6D92:YRP\1V[HHWC\ZVH-3AFZ$4QDOEMFGK&U6(V1QD5,%% $"J:E -.P*7
MB@!.E0S7 B&2:F;I6%J\I2,X/:@ NM>C@SEA61-XTMXC@NOYUPOB34I8]V&-
M>7:OK]RDAQ(: /H,^/+;_GHOYTJ^.[8_\M%_.OEU_$EWG_6&GP^([HL/WAH
M^K+?Q?!,1AQ^=;-MJZ3XP17S5H6N7$C+ES7K'AV]DD"9:@#U".0.,T_M5"Q8
MM$M:':@"O,^U2:P[[4EASDUK7IQ&U>>>(KIT5\&@"Q>>)XXB<N/SK./C2%3_
M *P?G7ENOZK,C-AS7&3Z[<AOOF@#Z*C\;P?\]!^=7[?QE#(<;Q^=?,*:_<Y_
MUAK<TK7;AI!ES0!]/6>OQS8PPK<M[L2#@UXCX=U.5]N6->H:/.S(,F@#JE?(
MIV:JQ-D584T /HI,TTO@4 *S8J![@+4-Q<!%ZU@7VK)'GYJ -R3443N*H3^(
M(HLY85Q6H^(T0'Y_UKC-5\3GYMLGZT >J3^,8(\Y<?G67<>.;?G]XOYUX5J7
MB6<EMLA_.L&37[IVXD- 'OMQXVA.<2#\ZQ[KQA&V<2#\Z\7&J7;_ ,9J03WD
MG<T >C7GBD-G$GZUC3>(V+?ZS]:Y9;6]E]:D&CWK<[30!T\/B0@_ZS]:U+?Q
M3C&9/UK@CI-ZG8U&;:\C]: /7+3Q>BXS(/SK>M/&T*XS(/SKP(RW<?<TPZK=
MQ_QF@#Z:@\=6^/\ 6+^=6E\<6Y_C7\Z^74\0W2G_ %AJU%XEN?\ GH: /J"/
MQC Y^^/SJ_;^(HI<88?G7S-9^)9]PS(:[+1O$3DKNDH ]\@OEEZ&KJMD5YUH
M^O(0N7KK;;5HG4?,* -JBJL=VC]#4ZN"* 'TQFVBG;JJ7,F$- $<^H+%U-94
M_B2*+JPK&UN^:-6PU>::WK<J%L/0!ZI)XR@4GYQ^=5W\<6X_C7\Z^?;SQ).&
M.)#^=94OB2Y_YZ&@#Z*N/'-O@_O%_.L2\\:1-G$@_.O!SKUVYP'-2)=WLW1C
M0!ZI=^+5;.)/UK&G\3YSB3]:XQ;6^E]:?_9%^W8T =!)XC8G_6?K3[?Q(0>9
M/UKFSH5]_=;\JC;1[Z/^$_E0!Z+9>*PN,R?K6_:^,HU S(/SKQ9H;R'UJ(WE
MW'_$: /H2#QO",?O!^=:<'CFWX_>+^=?,IUB[3^,U)'X@NE8?O#0!]3P^,H)
M,?./SK1A\1Q2=&'YU\QZ?XEG!&9#77Z;XG;Y<R?K0![W'JJ/W%6X[I7[UY5I
MOB$/CY_UKK].U(2@?-0!URMD4^J=M)O05;'2@!:*** "BBB@ HHHH **** "
MBBB@ HHHH *CE^[4E1R_=H Y77ON-7C_ (HZO7L&O?<:O'_%'5Z /*M6_P!:
M:Q&ZUMZM_K36(W6@"2(9:M_3K/S".*Q+8985V^@VX=EXH UM-T(2 ?)^E=);
M^%U91^[_ $K=\/Z6KJO%=Y::(FQ?E% 'F2^%$_YY_I4@\)I_SS_2O5AHJ#^$
M4[^QE_NB@#R5O":?\\_TJO+X54#_ %?Z5[$=&3^Z*C;0T(^Z* /!;_PR5!Q'
M^E<GJ'A^92<1G\J^FI_#$<G\ K*NO!,3@_(* /ER;1YT8Y0U!]A=.JFOH/5?
M!,40)""O/M:T-+8MA1Q0!Y^H\HU9BU-X>AIFH)Y3D5E/)S0!U=IXFGC8 ,?S
MKM]#\1SR%<L?SKR*W;+BN[\._>6@#W+0K]YE7)KM[;YD!]J\Y\-?=2O1;,_N
ME^E %AD&*Q]2C'E-6P[<5C:DW[MJ /-/$J##UY%KX^9J]<\2-P]>1Z^?F:@#
MD)OO&F1_>ITWWC38_O4 =+H?^L'UKUWPOT2O(M#_ -8/K7KOA?HE 'K.C?ZL
M5OK]VL#1O]6*WU^[0 ZBBB@ HHHH #TK,U'_ %35IGI69J'^J:@#S+Q-]UZ\
M<\0_>:O9/$WW7KQWQ"/F>@=CB)_O&HD^]4\X^8U"GWJ L=%HG^L'UKUSPO\
MP5Y'HG^L%>N>%_X*!'K>B_ZH?2NA3[M<]HO^J'TKH4^[0 I.*C>94ZFB5L"N
M9U?46@5L&@#=EU&%!RXKG]5UN%4.)!^=>?:WXKD@+8<UP.I>-I69AO- '<Z]
MXCV[MK_K7G&K>)9BY 8_G6/>>(7N"<L:RGF,[\FG8=BS<:O/,3R:H2&6;L:T
M;6Q\TCBM^ST+S,?+18+'%"QF?^$U-'I4['[AKU*P\*"3&4KJ+#P1&^,QBBP6
M/'M.T*=G&8S^5=[HOA@OMW1_I7I5CX&B0 ^6*Z&S\-1P8PHI".0T[P?"R#,8
M_*M+_A#;?'^K'Y5V\%@L0QBK'V<>E 'F\W@Z  _NQ^5<YJGA-%#;8_TKVA[,
M,.E9]SHRS9^44 ?->K^''0MMC/Y5QUYHTZ.?D-?55YX1CF!^05RVJ^!X@I(C
M% 'S9)8RH>5-1 -&:]8UOPN(-V$K@=2TUHF.%H HP:E)"1@FMBS\33Q$ ,?S
MKG'@=3T-$:E30!ZMHOBJ=BN7/YUZ;H.N&4+N;]:^?-*N/+9>:]!T75_+"_-0
M![_8WR/&/F%:2SJ1UKRS2]?RJC?75V.J^9CYJ=AV.EEPZFN>U*Q$H/%;5O+Y
MBU(]L''2D(\OU'0%D)^3]*P)?"RD_P"K_2O8Y=+5^U5SHB'^$4 >/'PJO_//
M]*%\*KG_ %?Z5Z__ &$G]T4#0D'\(ICN>51^%$_YY_I3I/"D80_)^E>KKHRC
M^$5!=:4JQGCM2 \*U70$B#?+^E<)JMD(BW%>Y>(;(*K\5Y'K\05GH$<+*N&J
M(=:L7(PYJNO6@#0L8M[@5VFCZ4LI7*URFE+F45Z?X;M@Q7B@#3T_PS'(H^3]
M*TO^$3CQ_J_TKL=%TY61>*Z--)4K]V@#R1_"B?\ //\ 2HCX47_GG^E>OG14
M/\(IO]AI_=% 'D0\*KG_ %?Z5=M/#*HX^3]*]/\ [#3^Z*D31E4_=% '+:9H
MXBQ\M=&EOY<73M6C%IZIVHN(@L9^E ' >(N$:O'/$?WGKV3Q)]UZ\;\1_>>@
M#S^Z^^:JCK5JZ^^:JCK0!<M8][BNITO31*1\M8&FINE%>D^';(.5XH GL/#H
MD ^3]*V8_"JD?ZO]*[31='5E7Y173Q:(FW[HH \K'A1/^>?Z4[_A$T_YY_I7
MK T5/[HI?[&7^Z* /(SX43_GG^E1MX47_GG^E>OG14_NBFG0T_NB@#QUO"J_
M\\_TJO+X6 !_=_I7M!T)/[HJ&30$(^Z*129X#?>'"H.(_P!*Y6_T65"<(:^D
M;SPW&0<J*YF_\+0G/RB@>Y\[S:=,A/RFJIMW0\@U[+J?AJ&/=\HKB]4TM(2<
M 4Q6.7M7*.*ZW2=0,97FN5F3RY.*L6URR$4$GKNDZX5V_/\ K7:Z;K)?;\WZ
MUX;8:@X9>37=Z'?NQ7DT >RV%YY@'-;<<HVC)KB=&G+*M=#)<E(\Y[4 :KW*
M*.6%96H:E&D9PPKG=2UHQ9^:N,U7Q,V&&^@#7UWQ 8PVU_UKS36O%DREL.?S
MJ+5]<,N[YJXG4;HRD\T 6[OQ-/*3EC^=9$^HO,>35)@6-/CA9CTH'83:TAJ5
M+"5^BFMC3--:5AE:[[1/"RS[<I0%CSRRT6=W'[L_E79Z/X;=RNZ,_E7I^E^!
MXBH/EBNHL_"4<(&$% CA-+\)HP7='^E;\7@Z C_5C\J[>WTA8@,**NK9@=J
M. /@V#'^K'Y5G7WA"$*<1C\J]3^RC'2J\VGK(.E.Y5SP/5?"^W=MC_2N/O\
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
MQ\M;T4J..U6%VF@"M;V_E@"K06GA:<!0 T+3@M.I: $Q2T44 %%%% !1110
M4444 %%%% !4<OW:DJ.7[M '*Z]]QJ\?\4=7KV#7ON-7D'BCJ] 'E.K?ZTUB
MD<UM:K_KFK'/6@!T?!K6L[GRR.:REYJW%"[=* .LL]9\L#YJUH_$F!]_]:XR
M+3[A^F:MKI%X>@/Y4 =7_P ),?\ GI^M)_PDI_O_ *US(T2]/9ORIW]@WWHW
MY4 =)_PDI_O_ *TQ_$A/\?ZUSW]@WWHWY4?V#?>C?E0!?NM?9LX<_G6#=ZM*
MQ.'/YU=/AR];^$_E2'PI>-_ ?RH Y^2_E8_>/YU']H=NI-='_P (?=G^ _E0
M/!]WG[A_*@#!C!D.*T[71WN,84\UMV7A&Y$@RA_*NYT/PNRE=R?I0!Q5CX/E
ME92$-=OHOA&6(KE#7HND:!"H7=&/RKJ8-*@0#""@#F=%TIH N177P)M0"I$M
MD3H*DVXH B?I6-J0_=-6T_2L?4O]4U.P['F7B0</7DFO?>:O7?$G1Z\BU_[S
M4!8Y*4_-48-.F^\:8O6D(G0GM5N,2GH34=I"9&'%=-I^DM+CY: ,=$N.Q;\Z
MD$5S_>;\Z[>U\,R.H^3]*O+X4DQ_J_TH \Z\JY_O-^=-,=R/XF_.O2/^$3D_
MYY_I3'\)R?\ //\ 2@#S@BY'\3?G2#[3_>;\Z] ;PE+_ ,\S^5-7PE+G_5G\
MJ .$"7)_B;\Z=Y5SC[S?G7H,?A.7_GG^E+)X7=4)V?I0!YNZ2CJ355R1UKM-
M0T5H@?E_2N5OK<QD\4 9S.*C!^:F.2#2(?FH Z/1?]8/K7K?A?\ @KR/1/\
M6#ZUZYX7_@H ]9T;_5"MS'RUB:-_JA6\!\M %"Z4[37$:^IVM7?7"?*:XCQ
MGRM0!XYXC'S/7G%__K6KTKQ(/F>O-K__ %K4 9_>M"P_UJ_6L_O6A8?ZU?K0
M!Z7X9^\E>R>'?NK7C?AG[R5[)X=^ZM '<6_W14]06_W14] !1110 4444 %%
M%% !113&<+0 I450OD'E-QVJ:2[5.IK*O]3C$;<T <-XE0;7KQOQ$!N>O6/$
M=^C*^#7D>OS!F:@#B;C[YJ%?O5-<'+&H5^]0!NZ/_K17K/A?JE>3:/\ ZT5Z
MSX7ZI0!Z]H?^K7Z5TT?W:YG0_P#5K]*Z:/[M #Z*** "BBB@ JE>_P"K;Z5=
MJE>_ZMOI0!YQXE^Z]>-^(_O/7LGB7[KUXWXC^\] '!7/WS59>M6;G[YJLO6@
M#<TC_7"O5_"_5*\HTC_7"O5_"_5* /7]"^XOTKJ8_NURVA?<7Z5U,?W: 'T4
M44 %%%% !5.\^X?I5RJ=Y]P_2@#SOQ)]UZ\;\1_>>O9/$GW7KQOQ']YZ . N
M?OFJX-3W7WS56@"4/BG"X=>A--CC+G J]!I4LW0&@"K]ME'1C^=+]OG_ +[?
MG6U%X7N9!PA_*IQX.NS_  '\J .>_M"?^^WYT?;Y_P"^WYUT7_"'7?\ </Y5
M&WA.Y7JA_*@#"^WS_P!\_G1]OG_OM^=:K^'9TZJ?RJM)I$J=5/Y4 4_M\_\
M?/YT"^G/\;?G3I+)TZBHA'M/- %N-YY?XC^=78K">7UIEDR C-=1ITT'&<4
M9$7AZ>7L:NP^#IY"/D-=UI;6K[>!7;Z596LNWY10!Y1I_@>8."8S^5=YHGA5
MX2N4_2O2;+1[8J"$%:L6FPH.%% &+I.EK$JY6NABMT4=!3TA5.@J7I0!#(@"
M]*YC7?N-]*ZF7[M<MKWW&^E 'D'BCJ]>4:M_K37J_BCJ]>4:M_K30!B-UJQ;
M??%5VZU8MC\XH [WPZH+)7L?AN-=J<5XSX>E"LE>O>';Q%5.: /3;*)?+7CM
M5\(!VK&L;]#&O-::7*MT- %C%%-5LTZ@ HHHH **** "BBB@ JM<_<-6:K7/
MW#0!PGB+[KUXWXE^\]>R>(ONO7C?B7[ST >;WW^M:J/>KU]_K6JCWH T]._U
MJUZ?X9^\E>8:=_K5KT_PS]Y* /8O#WW5KM(/NBN+\/?=6NT@^Z* 'R?=KF];
M_P!6?I722?=KF];_ -6?I0!Y'XH_CKR76?\ 6GZUZUXH_CKR76?]:?K0!S[_
M 'JDA&6%1O\ >J6#[PH ZO18 [+Q7IFB::KHORUY_P"'E!9:]@\.Q*43B@!+
MG2%$&=HZ>E<)K]B$#?+7M,]CYEOP.U<+X@T*24-M7]* /"M339(<5DF5U/!-
M>@:OX7N"Y.P_E7+W.@3Q$Y4_E0!0MKR4,/F/YUV_A^[E++EC^=<5]E:%N171
MZ+=K"RY- 'N'AZ9FC7)-=-=DFV_"O.-"U^")%RP_.NDN/$UNUOC>.GK0!S'B
M?H]>1ZU_K#]:](U_5HI@V#7FNJMYCDB@#GW^]4D'WA0\9S3H5PPH [3P]]Y*
M]D\,_=2O&_#WWEKV3PS]U* /3-/_ -4M:7:LW3_]4M:7:@"A?_ZIOI7FOB7[
MKUZ5?_ZIOI7FOB7[KT >-^(OO-7#7'WC7<^(OO-7#7'WC0!"OWJWM'_U@K!7
M[U;ND?ZP4 >K>&3]VO6=$;]V/I7D?AK^"O6-$!V+0!U43<"G2GY:BAS@4^3[
MM '(^(/NM7COB?[SU[%X@^ZU>.^)_O/0!Y?J7^M:LP]:T]2_UK5F'K0!>LO]
M8OUKT?PU]Y*\XLO]8OUKT?PU]Y* /9/#GW4KO+;[@K@_#GW4KO+;[@H LT44
M4 %%%% !1110 8I,4M% "8HQ36<+5>2\1.IH MT5F-JL0/WA3DU*-^AH T:*
M@2X5^AJ8-F@!:*3-&Z@ Q4$\>Y34^:",T <AJNF&8-@5PFJ^%WF+80U[*]NC
M]15=].A?JHH ^=KKP1*Q/[L_E69+X#F/_+,_E7TJVC6Y_@%1-H5L1_JQ^5 '
MR_/X%F7GRS^59=QX4EBSE#7U)=^'[<H<1C\JY34_#2$-MC'Y4 ?.<VC21=C5
M-[5X_6O9M1\*L2<1_I7.77A&8DXC/Y4 >;,TB=S4?VJ4?Q'\Z[:?P?<\X0_E
M5!O!UUG[A_*@#F1>S#^(_G3A?S_WV_.NB_X0Z[_N'\J8_A.Y3DH?RH PA?3_
M -]OSJQ!?SAA\Y_.K4NAS0]5/Y52>W:+J* .JTK6GB*Y<_G7>Z1XM6,*#)^M
M>*BX:/H:GBU29#PYH ^F=.\7QR!1O'YUU-CK23@885\OZ1KLJLN7/YUZ5H/B
M0*%W/^M 'N<$X=<U/NKB=-\2PM&!O'YUMQ:Q%*.&_6@#9\P4HDK/2?S.AJPF
M30!:#9IU1+FI!0 M%%% !1110 4444 %%%% !4<OW:DJ.7[M '*Z]]QJ\?\
M%'5Z]@U[[C5X_P"*.KT >5:M_K36*QYK:U;_ %IK$;K0!/!RPKJ=(M!*5R*Y
M>V'SBN[\/QY9* .NT?0HY0N5_2NPM/"L+*,H/RIOAVU#*G%>A65D-B\4 <C'
MX2@_N#\JL+X1M\?ZL?E7;+: =JD%N/2@#ASX1M_[@_*D_P"$1M_^>8_*NZ^S
MCTI/LX]* .+3PA;?W!^56D\'VO\ <'Y5U@A J0)B@#E1X/M/^>8_*G?\(?:?
MW!^5=52T <LOA.U0\(/RJU%H4,/11^5;U(5H&9\=L(^@JPN14^P4FRG<=Q!0
M:7&*0T"L02=*QM2SY35N,.*R=24>4U(1Y=XDSAZ\DU[[S5[!XE48>O(=?'S-
M0!QTWWC3$ZU)-]XTR/[U '0:/$'D&:]2\.:=')MR*\RT/_6#ZUZ[X7Z)0!W^
MDZ%"T8RH_*MQ?#T&/NC\J;HW^K%;Z_=H P_^$>@_NC\J0^';?^Z/RK?HH Y_
M_A&[?^X/RI/^$;M_[@_*NAHH P/^$=MP/NC\JHWV@P+$WRC\JZT]*S-1_P!4
MU 'D/B+3(XU? KR;78%1FQ7M7B;[KUXYXA^\U '$S##&HT^]4D_WC4:?>H Z
M/1/]8/K7KGA?^"O(]$_U@^M>N>%_X* /6]%_U0^E= @^6N?T7_5#Z5T*?=H
MAN!\IKB/$(^5Z[B?[M<5XA0E6XH \9\3#YGKS2__ -:U>H^);=RSX!KS:_M9
M/-;Y3^5 &/CFK]CQ(OUJ#[.P/(-6(!L84Q7/1?#DRJR9->N^'[Z)57+"O M-
MO_*(YKLM,\1&/;\_ZT@N?0=M?Q%1\PJZMPK=#7D6F^)2VW+_ *UV&G:PL@&7
M'YT#.R!S2U0M[Q&4?,/SJT)E/<4 2T4P,#2YI7%<=129IID4=33&./2J-W+L
M6IY+J-1RP_.L+5=1B6,_./SH S=2U/RL_-7&ZIK^T,-_ZU%XAUA5W8?]:\QU
MC76WL U &WJVM>9N^:N&U.Z\PMS52XU9W)YJBUP9#UH C="YXIT=I(QX%:%E
M;^:1Q75:;HHEV_+0!C:18R^:/E->J^&K5UV9%5M*\. %3L_2N[TC21%M^6@#
MIM$0A%^E=)']VLK3X1&HK67I0 ZBBB@ HHHH *I7O^K;Z5=JE>_ZMOI0!YQX
ME^Z]>-^(_O/7LGB7[KUXWXC^\] '!7/WS59>M6;G[YJLO6@#<TC_ %PKU?PO
MU2O*-(_UPKU?POU2@#U_0ON+]*ZF/[M<MH7W%^E=3']V@!]%%% !1110 53O
M/N'Z5<JG>?</TH \[\2?=>O&_$?WGKV3Q)]UZ\;\1_>>@#S^Z^^:JCK5JZ^^
M:JC[U &KIL0>4 UZ-X>TJ*8KD5Y[I7^N6O5?"_5* .]T;PQ;2(N4'Y5TD?A"
MT*_<'Y4F@_<6NKB^[0!R[>#[7'W!^59UYX1M@#A!^5=Z1FH9( ] 'D.H>%(Q
MG$?Z5RFH^&]F<)^E>]3Z6L@.17/:IH2%"=HH ^=]2TGR\_+7*WD/EL>*]K\0
M:(5#83]*\PUG3)59L(?RH Y83LAXJW!J4B'K5>:SE4G*G\J@\MD/(- ';Z-K
M+!ERU>G^']=3"[GKP*WNVA(YK<L_$<D!&&- 'U3I>N6YC'SBMV+4H9!PPKYC
MTKQE-N4;S^=>@Z'XEDG*Y8T"N>RI,K]#4N:YK2;XS*N370QMD4#%D^[7+ZZI
M*-]*ZA^16#JT.]3Q0!XQXGA8EN*\KU:W?S3Q7NNO:<9"WRUYSJVC-O)V'\J
M/,WA8'I3H@5:NAN],*9^6L:>(QD\4 ;NDW0C9>:[_1]9$87YJ\ACNFC/!K3M
M=:>,CYC0!]#:9KRL%&_]:ZRPU$28^:OGC1O$+[ERQKTS0-;#A<O^M 'KEM)N
M6K0Z5SVF:E$T8^<?G6REU&PX84 6:3-1B0'H:=F@!V:,TS-)NH EII8"F>:H
M'6JEU=*B'YA0!9>Y1.IK/NM2A53EA7-ZKK/E!L-^M<-JOBEDW /^M '1^(-1
MA97PPKR+Q%<([/@U+J?B9Y-WSG\ZY#4-2,Q/- &->G,C52[U/*2[&FK;NQX!
MH O:=_K5KT_PS]Y*\XTZSE\U?E/Y5Z;X:MI%*94_E0!ZYX>^ZM=I!]T5QV@1
ML%7(KL8?NB@!\GW:YO6_]6?I722?=KF];_U9^E 'D?BC^.O)=9_UI^M>M>*/
MXZ\EUG_6GZT <^_WJFM_O"H7^]4UO]X4 =QX=^\M>Q^&ONI7CGAW[RU[)X9^
MZE 'HEK LD2Y':B?1XIARH_*IK#_ %2UH=J .,U'PS;LC'8/RKSOQ!H$,8?"
MC\J]HOAF-J\]\0V[,KX% 'A&M60B9L"N<,[PMQ7H>O:=(S-\I_*N)N]/D5C\
MI_*@!D.NSQ=&/YU9_P"$FN",%S^=8LMNR=15<Y4T ;SZO)-]YJK/*).IK+#D
M4_S30!8D"TR/&ZH#(33X6RU ':>'_O+7L?AG[J5XWX>^\M>R>&?NI0!Z9I_^
MJ6M+M6;I_P#JEK2[4 4+_P#U3?2O-?$OW7KTJ_\ ]4WTKS7Q+]UZ /&_$7WF
MKAKC[QKN?$7WFKAKC[QH A7[U;VC_P"L%8*_>K>T?_6"@#U7PR/N5ZUH@'EK
M]*\E\,GE:]9T0_NU^E*XKG3Q#Y12R_=IL1^44Z3[M%PN<?X@^ZU>.^)_O/7L
MFOQEE; KR'Q+:R,SX4_E3&>4ZE_K6K,/6MS4K*;S6^4_E62UM(IY4T 3V7^L
M7ZUZ-X;<!DKSBV!5QGUKM-#N@C+S0![IX=G4*G-=Y;3J4'->.:'JRH%^;]:[
MBQUA"H^<?G0!VPD!IV:Q+;4$?'S#\ZTH[A6'44 6LTF:B\P'H:-] $N:6HM]
M!E4#K0!(6 IC2@#K56:Z5>XK+N=310?F'YT 7[N[5%/-<KJ>KB//S57U/6E"
MGYQ^=<#K>N?>P_ZT ;MSXCVO]_OZU9LO$R[AF3]:\<U'7G#G#'K5!/$LR-PQ
MH ^F;#Q% 0,R#\ZW(=:MW PXKY=M?%]RI&&:NKTCQ7<RE06:@#Z"6^C?HPJ3
MSQC.:\]T75I9E7)-=.URWD9H UGOXX^K"H6UNW3JXKA-:U:6$-@FO/=5\674
M3'#-0![R?$%K_P ]!2?\)!:Y_P!8*^:9/&]VI^^U,7QW<[N7:@#Z=36K=^CB
MK4=[%)T85\ZZ5XVED9<R'\Z]"T3Q()=NZ3]: /3MJR"H)-/CDZBJ5AJ<4B#Y
MQ^=:B74;#AA0!F2:%"_51^55G\-6S?P#\JZ 2*>AII:@#FV\*VI_@'Y5'_PB
M-I_<'Y5T9<T@<T <Z?"%IC[@_*LW4/"5LL9P@_*NW#C%4[PJT9YH \4U[P['
M&&VI^E>:ZQI;(S86OH+6;>-PV<5Y]J^FPL6Z4 >,36DBL>*JF-E/-=[J&G1*
M3C%<S>6ZH3B@#/@N&B/%;5GK4D1&&_6L!E.[BGQJ^> : /1-+\23;U&\_G7H
M6A:S),5RWZUXKI:R^:O!KT_PTKY3(- 'L.D3&15S711+Q7+:$#L7-=7%]V@!
MX%+110 4444 %%%% !1110 4444 %1R_=J2HY?NT <KKWW&KQ_Q1U>O8->^X
MU>0>*!R] 'E.K?ZTUB-UK;U8'S3Q6*P.>E %BU^^*[_PY]Y*X&U!WCBN]\.Y
MW)0![)X;'RI7HEF/W:_2O.?#;85*]#LW^1?I0!HBEI@:G9H 6BBB@ HHHH *
M*** "BBB@ I*6B@!,4QJDIC"@"N[8%9&I/\ NFK8D7BL;4D_=-0!YIXD;AZ\
MCUX_,U>N>)%X>O(]>4[FH X^;[QIL?WJ?,#N/%,C!W=* .ET/_6#ZUZ[X7Z)
M7D6A@^8/K7KOA?HE 'K.C?ZL5OK]VL#1O]6*WU^[0 ZBBB@ HHHH #TK,U'_
M %35IGI69J/^J:@#S+Q-]UZ\<\0_>:O8_$WW7KQSQ"#N:@#B9_O&HT^]4LX.
MXU&@.Z@#HM$_U@^M>N>%_P""O(]$!\P?6O7/"_\ !0!ZWHO^J'TKH4^[7/:+
M_JA]*Z%/NT -D7(K!U*Q\X'BNA(JO+%NH \OU;PV)MWR5Q&J>$0NX[/TKWB>
MQ##I7/:II093\M 'SQJ.A^1GY:YJYB,+]*]MUO1,[OEKS[5-#(8_+0*QQJ73
M(:NP:LR$?-2W.E,A/RUF2V[1GH:!G8Z?X@*$?/77:;XJ*[?G_6O'XY60]ZTK
M?4FCQR: /?=.\6;@!O\ UKJM/UT2X^?]:^<;/Q 8B/F_6NCL?&?DX^?]: /H
MZUO4=1\PJY]HCQ]X5X-;?$01K_K/UJW_ ,+)&/\ 6_K0![5)=HH^]6%J.L+"
M&PU>6R?$<,/];^M8FH>.?.!_>=?>@#N-5\7^3N D_6N)U/QRS%AYGZUQVI:^
MTY.&-<Q<W3R,3DT =1J7B5KC/SUR]Y=F9B<U39G)[U)%$TC 8H @(9C4L,+E
MAP:Z'3M$-P1\O6NPTSP29MI\O]* .8T6S9V7Y:]0T#2=X7*U=TKP,8MI\O\
M2NYTK0/LX'R]* &Z=HH$:G;6W#8B,#BM"WMPB 8J<Q\4 5(_DJRKTGE4Y8\4
M 2*V:?357%/H **** "J5[_JV^E7:I7O^K;Z4 ><>)?NO7C?B/[SU[+XD^Z]
M>-^(@=ST <#<_?-5EZU9N0=YXJNH.>E &WI'^N%>K^%^J5Y1I /G"O5_"_5*
M /7]"^XOTKJ8_NURVA?<7Z5U,?W: 'T444 %%%% !5.\^X?I5RJ=Y]P_2@#S
MOQ)]UZ\;\1_>>O9?$GW7KQOQ&#N>@#SZZ^^:JC[U6KH'>>*K '=TH V-*_UR
MUZKX7ZI7E>E ^:.*]4\,9RE 'L&@_<6NLB^[7)Z#]Q?I75Q'Y: ):*** $(X
MJK<6XE4C%6Z* .2U#P^MP#\O6N2U+P,L@8^7^E>L[0>U5KB)2IXH ^=]7\%K
M"&/E_I7!:KHWV<M\O2OI36[!9%;Y:\RUS0MY;Y: /$IX2C$8J 9!KN-0T JS
M';^E8%SIIB)^6@!FF.1*O->F>&YP"F37EL1,$E='IFN?9R.>E 'T3H5VH5?F
MKK[>Y4J.:^?-+\9^7M&_]:[?2_%_G;1O_6@#U8.&'6H9[<2CI6'INK>>!SUK
MHH7#J#0!S]YH8FS\M<OJGA92K'9^E>F$ U2N[<2(1B@#Y_USP_Y0;"?I7G6K
M6#1LWRU],:MH N WR]:X75?!!DW'R_TH \ >!@W2A4(->FZCX-,.3Y?Z5RE_
MI)MR?EZ4 9MI=& @YKI+#Q,UMCY^GO7(3!D8C%0;WSWH ]BTSQVP(7S/UKN=
M(\7>>5!D_6OFVVN7C<')KJM*\0-;E<L>* /J#3=468#+5N)/&1]X5\[Z=X\\
M@#]YT]ZVD^)0 _UOZT >WF:/^\*JSW2(#\U>.'XEC_GK^M5I_B,''^L_6@#U
M2[U=8\_-7-ZCXA 4C?\ K7F]UXY\S/[S]:Q+OQ49<_/^M '5ZSKVX-\]<#JN
MKEBWS54O-9:7/S5AW$[2GO0 ^>^+D\U4,A<U-%;-(>E:EII#.1\M %.QLS,X
MXKLM)\,BXV_)^E2Z/H1#+\M>DZ#I(3;E: ,O2O ZG:?+_2NSTWPHL&/DZ>U=
M)IEFJH/EK:CA4#I0!G6.GB #BM9%P* H%/H 9)]VN;UO_5GZ5TDGW:YS6_\
M5GZ4 >1>*/XZ\EUG_6GZUZUXH'WZ\EUD'S3QWH Y]_O5-;_>%0N#NZ5-;@[A
MQ0!W'AW[RU[)X9^ZE>-^'0=RU[)X9^ZE 'I5A_JEK0[5GV/^J6KV[B@".:/>
MI%8M[HXG!^7K6YNI<@T >=:CX064$[/TKB-8\(+$&.S]*]VG52IXKBO$,8VM
MQ0!\^:QHX@+?+TKC[F+8Y%>I>)8_F?BO-KY2)6XH SPE2>73>0>E.WF@!I3%
M.B&&II8TZ')84 =GX>^\E>Q^&?NI7CGAX'<E>Q^&?NI0!Z9I_P#JEK2[5FZ?
M_JEK2[4 4+__ %3?2O-?$OW7KTJ__P!4WTKS7Q+]UZ /&_$7WFKAKC[QKN?$
M0.YJX:X!W'B@"%?O5NZ1_K!6$H.>E;ND ^8* /4_#1^[7K&B'Y%KR7PWGY:]
M6T4_(M%@L=7">!4^-PJK >*MI0!FWNGB<'BN6U'PFMQD[/TKO\ TQXU(Z4 >
M(ZKX$4 MY?Z5P>K^&!;[ODZ>U?2&J6ZM&>*\U\0V 8-A: /!KVU-N_3H:;;W
MY@8<UU>LZ42S?+7+7&GLA/% &W9^)FBQ\_ZUT^G>+VX^?]:\N>)T/>I[:Y>(
MCDT >]:;XJW;?G_6NKL?$(<#Y_UKYXL];:+'S&M^T\6F/'S_ *T#/H6VU59,
M?-6I%=H5^\*\ MO'7EX_>?K6G'\10H_UGZT"/:);U%'WA69<ZNJ _-7DTOQ#
M##_6?K6;<>.=X/[S]: /2=1\1! ?G_6N-U/Q:4+?/^M<9>^*C+GY_P!:YJ^U
M9IB>30!U&H>,&8D;_P!:YN]U]I\_-6!-([MGFHQ&Y/0T 699S,W6K5K9F4CB
MH+6V9F'%=CHVF%RORTKBN5[#0RY'RUVFCZ 4*_+6SHN@[@OR5V]AH.P#Y:8R
MGHNG&-5XKJ/LV8,8J6UT_P L#BM 0?+C% '#:OI/G!N*X#5_#.[<=E>VW%EO
M!XK#O](#*WRTR6?/>H^'O*W?+7+WEF8&/M7MVO:6$#?+7EVN6I1FXI#1S=O>
MFW;KTKH].\5M;X^?]:XVX5@QX-0 N#WH&>TZ7X\;(7S/UKN=)\7>?MS)^M?-
M=I=/$X.376:7XA:W*Y;I0!]/:=JJS*,M6NMPC#[PKY[T_P >>2!^\_6M=/B0
M /\ 6_K0,]N,D9[BHGF1>XKQG_A90_YZ_K4<GQ'!_P"6GZT"/7I;Y$'WJQ[_
M %=50_-7ELWQ!#?\M/UK*N_&WFJ1YGZTR=3K]9UX*&PU<!JWB(Y;YJRM0\0F
M?/S5R]Y=M*3R:0T:=WK9D)^:LB6[\T]:HL6)[TL:L6Z&@9HVMOYS=*Z?3=!$
MV/EK*T:$LR\5Z?X>L-X7Y: *^E>%!D'9^E=WI&@"';\M;&E:4/+!VUT=O8!
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
M.WQ_JQ^56%T6V_YYK0!X1I?@:6%AF,UZ!HOAYK<+E:[Y-*MUZ(*L):1IT44
M4["U$<8&*TE4 4*@7I3J $Q2T44 %%%% !1110 4444 %%%% !1110 PFHR:
MD-1F@!A4-49M5;J*E'6I%H J?V=&3T%)_9D7]VM 4M &>--B'\(J1;%%Z"KE
M% $2PA>@J0#%+10 4444 %%%% !1110 4444 %%%% !1110 4444 )BFLH-/
MI#0!6>!6[56>Q0]16@:C- %#^S8CVIPTN+^[5X4\4 4ETV)?X:G2U1.@JP*6
M@!JH%IU%% !1110 4444 %-9<BG44 59+=6ZBJSZ?&W45H&FF@#-_LJ+^Z*<
M-*B_NBM 4X4 41IT:_PBGBV5.@JX:8: (@-M2 TRG"@"04&@4&@!AIM.--H
M>*D%1BI!0 M(1FEHH @>W5^HJK)ID4G516C10!BMH,#=4%1GPY;'^ ?E6]10
M!SQ\,VQ_@'Y4G_"+VO\ <'Y5T5% '._\(O:_W!^52IX=MDZ(/RK=HH S(])A
M3HHJPMFBC@5;I#0!7\H+2CBGM3* ' U(*B%2"@!]%%% !1110 4444 %%%%
M!1110 4A&:6B@")H0W:H&L4;J*N44 9YTR(_PTW^RXO[HK2HH SO[,B'\(IX
MM$3H*NFHS0!$%"]*>#33UIPH D%/I@I] !1110 4A&:6B@"%X%;J*@>PC;J*
MNT4 9W]EQ?W:!ID0_A%:-% %%=/C':IEM57H*L44 ,5 *?110 4444 %%%%
M!1110 4444 ,:,-4+6B-U%6:* *!TZ,]J3^S(O[HK0HH S_[-B]!3AI\8[5>
MHH IBQ0=J>+5!VJS10!$L0':G@8IU)0 AIN:4TVJ12%S3J93Q0P8%<U&T(/:
MI:*DDJO9HW456?287ZJ*TZ* ,-_#MN_5!^51'PO:G_EF/RKHJ* .;_X16U_Y
MYC\J<OA>U'\ _*NBHH PT\/VZ]$'Y5.FCPKT45JT4 4TL8TZ"K"1!>@J2B@
MHHHH **** "BBB@ HHHH *8R T^B@"NUJK=14+:?&>U7J* ,_P#LR+^Z*/[,
MB_NBM"B@"DMA&O05.L"KT%344 (!BEHHH 2D-+2&FAH;FC-)13*'TA0-2BEI
M,EE=[1'ZBH&TV(_PUH44A&=_9<7]T4O]FQ#M6A2&@"C]B1>@H\H+TJVU0-31
M2&@XJ534-2I38$V,BF- K=13UI]224GL(VZBHFTR+^Z*TJ:: ,LZ7%_=I5TZ
M,'I6@:2@"".U1>@JRB!:!3Q0 M%%% !1110 4444 %%%% !43Q!NM2TAH HR
M62/U%5GTB%^JBM4TV@#&;P_;MU0?E49\,6I_@'Y5OBG4 <\/#-L/X!^52KX?
MMUZ(/RK<I* ,N/2(4Z**MQVB(.!5FEH 14 %.HHH **** "BBB@ HHHH ***
M* "BBB@!I7-1F(&IJ2@"H]HC=15>3287ZJ*TJ6@##?P];OU0?E41\,6I_@'Y
M5T5% '.?\(O:_P#/,?E2_P#"+VO]P?E7144 <^/#5L/X!^52)X?MUZ(/RK<H
MH S8]*BCZ**M);*G058HH :$ I<4M% !1110 4444 %%%% !1110 4444 ?_
!V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>14
<FILENAME>image00003.jpg
<TEXT>
begin 644 image00003.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  8$!08%! 8&!08'!P8("A *"@D)
M"A0.#PP0%Q08&!<4%A8:'24?&ALC'!86("P@(R8G*2HI&1\M,"TH,"4H*2C_
MVP!# 0<'!PH("A,*"A,H&A8:*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H
M*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"C_P  1" %U AL# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
M<B7"G+8!^;#8JG:>%/%L4RWTVGZN=8N]-TE)+I;K&'BF_?H_S]=N#T/&?4T
M?15-D=8XV>1E1%!9F8X  [FO%KWPSXY:?Q1:V5S<QV^G6EPNAS&Y.;A[A]YS
MSUC4%%W=-V176?!W3-5T_0+U-9^WJDMP6@MKY,-"FU00"9I6*DY/+=SQB@#I
M=)\5^'M9NS:Z1KVDW]T%+F&UO(Y7VCJ=JDG'(K7\Z/S_ "?,3SMN_9N&[;G&
M<>E>)ZWX3U>#5->N;72+QM,GUZ*>>#3I%@GN;06JJ1&P92 ) "5R,X-8X\+>
M+[&:+4KK2=2U+5)="-HKK?,#%BY9@DC*ZEF$+#H?F*D9!.: /H"6\MHKJ&VE
MN(4N9PQBB9P'D"_>VCJ<9YQTK-OO%7A^PU+^SK[7=*MM0RH^RS7D:2_-]WY"
M<\]N.:\Q\ Z#XDB\1Z#<:M:7HMK*\U,(]P>8X)%3RA@NQ /S8&21TS6=\1/
M>O:QXD\9:C:V]Q/83O89L%\I1J4")B54<C<CCL<@?SH ]W=E1&9V"JHR23@
M4D4B2QI)$ZO&X#*RG(8'H0?2O!=0\*^+]5\1^*$NO[46VO+>\6'D_9YH7AQ#
M"3Y^$(;'2/.0<L0:BTW2/%]C;V.GV6C:Y%:S#1V5FN@1:B!_](5OWA//7 R"
M#[8H ^@:*\,M/ ^O3:/H*7AUL7%QJ-[+J9&H2!EBVS"$9#\+S'@#UKU+X=PZ
ME;^!="AUWSO[4CLXTN?.;<^\+@[CW/O0!T-%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %>0_&#Q=XDT/Q)%9>'IVCB
M72I;YE2"!\NKX&XRNN%]=N3[5Z]65K'AS1-:FBFUG1M-U"6(;8WN[5)609S@
M%@<4 >?+\6B;B*WMM*74B]@UPDEK.R^9,L*2M'M9/ER)!CYB?4<TJ_%^(S:9
M"NDF2:<G[4L<S?Z/B98MOS1J2V6!*L$P.^2 ?0)/#>AR74EU)HVFM<R+L>9K
M5"[+MVX)QDC;QCTXHB\.:)$EHD6C::BV;F2V"VJ 0,>I3CY3[B@#D/!?C>^\
M3>+DA^S16NE2Z=)<PQB422,5N#%N?Y1L/RGY>?KG-4)OBUMM;=X=&1YIQ@1O
M>A I^V_91N.PX&?FSCMCWKT2RT72[&]FO++3;*VNY\^;/# J/)DY.Y@,G)YY
MK+U;P3X=U.&5)M)LXS-,D\TD,"(\K+(L@WL!E@649!ZT <C'\6 2@;1L>20+
M[%UGR\W1M1Y/R?O?G4G^#C'<XK9\$^.Y?$FL-8W&EK9!K5[N"1;GS=Z).T)W
M#:NTY7(Y/!KIET#1U-D5TG3Q]A_X],6R?Z/_ -<^/E_#%36FEZ?9RK+:6-K!
M*J&,/%"JD(6W%<@="Q)QZ\T ><Q?%=[G4+BSLM&BN'^TV\-K(+PK',LTLD08
ML8^,&,YP&'H>*OWOCR:7P1X>\06ML8#?7T<$MN7#8&7#KN*\C*'G -==;^&]
M#MIVGM]&TV*9I!*TB6J*Q<'<&) SD$DY]3FI_P"R--^QQ6G]GV?V2%_,CA\A
M=B-DG(7& <D\CU- 'D&L_%S5OL4,EII<%G=FV-X(GN/-1XWLI9TW'8"""G('
MIUQ5R#XKW>GQS+J=C#=7*WRPRQ13D&&(K;C<N(_F >;^+;Z9[5Z=_8&C;E;^
MR=/W*@C4_9DR%"E HXZ;6*X]"1T-5_\ A$O#GEQ)_P (_I&R([HU^Q1X0X R
M/EXX51^ ]* .<T_Q/J,GPCU+Q#<.C:A;VU[*K(@49B:0+QR.BBLF'XJ786;=
MH E6..Z:-TO/GE^S;#*=NSY<JY(Y.2N.,@UZ4NG62Z>]BMG;"RD5E>W$2^6P
M;.X%<8(.3GUR:CAT?3(9%>'3K*-UW[66!01OQOQQ_%@9]<#- 'G,WQ?A$MBU
MKH\EQ9WCR213K/CS+=9EA$JC9@EF8D*2!@?>R0*;=?$W4IV:VL]*MK.^34[:
MV\F[N'W/!),8S)Q'CG'!4N.>N1BO13H.D&.RC.E6!CL3FT4VZ8M_^N8Q\O3M
MBH_^$;T/;=#^QM,Q=.)+@?94_?,#D,_'S$'G)[T >;Z9\5Y&,=Q+X:AMK6<V
M\LLD5[O?;-*T*MM\L;F!CZ9Z8YSQ4NF_%V;4[6W:R\/YN+J9$A26\*(4>&64
M,S>7D'$1! !'/!->C1Z#I$:HL>E6"*@0*%MD 78Q9,<?PL21Z$Y%%OH&CV^?
ML^DZ?%F4SG9;(O[P@J7X'WL$C/7!- '*_#GQE?>+M4U1Y+2"WTV.ULY[8"0M
M*#-%O(;Y0/Q![5S?B7XHZE)I5RFAV$-M<S,197$L^\[4NTMY#(FP[&R^5'S
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
M .?*W_[]BC^RM/\ ^?*W_P"_8H ZBBN7_LK3_P#GRM_^_8H_LK3_ /GRM_\
MOV* .HHKE_[*T_\ Y\K?_OV*/[*T_P#Y\K?_ +]B@#J**Y?^RM/_ .?*W_[]
MBC^RM/\ ^?*W_P"_8H ZBBN7_LK3_P#GRM_^_8H_LK3_ /GRM_\ OV* .HHK
ME_[*T_\ Y\K?_OV*/[*T_P#Y\K?_ +]B@#J**Y?^RM/_ .?*W_[]BC^RM/\
M^?*W_P"_8H ZBBN7_LK3_P#GRM_^_8H_LK3_ /GRM_\ OV* .HHKE_[*T_\
MY\K?_OV*/[*T_P#Y\K?_ +]B@#J**Y?^RM/_ .?*W_[]BC^RM/\ ^?*W_P"_
M8H ZBBN7_LK3_P#GRM_^_8H_LK3_ /GRM_\ OV* .HHKE_[*T_\ Y\K?_OV*
M/[*T_P#Y\K?_ +]B@#J**Y?^RM/_ .?*W_[]BC^RM/\ ^?*W_P"_8H ZBBN7
M_LK3_P#GRM_^_8IAL;6WNK&2WMH8I/M*#<B '!S0!U=%%% !165XBU^Q\/VD
M4^H&;$L@BC2&)I'=CV"J,^]4KCQAI4,EVK&Y9+6)9995@8H-P!5<X^\=R\=>
M: .BK!\:?\@FW_["%G_Z41TG_"6:8)[.&4W,,MT%(62W<>7N8JN\XPFY@0,]
M:7QI_P @FW_["%G_ .E$= #J*7!]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!
M**7!]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!**7!]#1@^AH 2BEP?0T8/H:
M $HI<'T-&#Z&@!**7!]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!**7!]#1@^
MAH 2BEP?0T8/H: $HI<'T-&#Z&@!**7!]#1@^AH 2BEP?0T8/H: $HI<'T-&
M#Z&@!**7!]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!**7!]#1@^AH 2BEP?0
MT8/H: $HI<'T-&#Z&@!**7!]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!**7!
M]#1@^AH 2BEP?0T8/H: $HI<'T-&#Z&@!*@N?]=9?]?4?]:L8/H:@N0?.LO^
MOJ/^M '14444 <[XZT"?Q'HRV=M/:PN)4DS<V_G(<'/9E8'T((-8,_P\:6X6
M5[ZQE9(@@EGTU9)9VV!3]H;</-3C=MP#G!W<"O0** .%L? <MH(HH]2A2UD9
M'NX([3:K;)3(JP_/^Z7)QCYN!Q@\UI^/K*"YTRU>=69EOK11AV7@W$>>AKIZ
MP?&G_()M_P#L(6?_ *41T 4?[&L/^>+_ /?^3_XJC^QK#_GB_P#W_D_^*K0H
MH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT** ,_P#L:P_YXO\ ]_Y/
M_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^3_XJC^QK#_GB_P#W_D_^
M*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT** ,_P#L:P_YXO\
M]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^3_XJC^QK#_GB_P#W
M_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT** ,_P#L:P_Y
MXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^3_XJC^QK#_GB
M_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT** ,_P#L
M:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^3_XJC^QK
M#_GB_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT** ,
M_P#L:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^3_XJ
MC^QK#_GB_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/_BJT
M** ,_P#L:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_ /?^
M3_XJC^QK#_GB_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\ ]_Y/
M_BJT** ,_P#L:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/^>+_
M /?^3_XJC^QK#_GB_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_YXO\
M]_Y/_BJT** ,_P#L:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\ [&L/
M^>+_ /?^3_XJC^QK#_GB_P#W_D_^*K0HH S_ .QK#_GB_P#W_D_^*H_L:P_Y
MXO\ ]_Y/_BJT** ,_P#L:P_YXO\ ]_Y/_BJ/[&L/^>+_ /?^3_XJM"B@#/\
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
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 5S6O3R:K?KHMDQ"_>NY!_"O]WZUH>(M4_LVT A&^\F.R
M&,<DGU_"E\/Z7_9EGB0[[J4[YI#R2WI^%>=B6\34^JPV^T_+MZO\O4\K%R>+
MJ_4X;;S?ETCZRZ]EZHT+:".VMXX(%"QQKM4#M3+G_767_7U'_6IZ@N?]=9?]
M?4?]:]!)15D>I&*BE&.R.CHHHIC.5^(NC7FLZ-#'IMO%-=0SI(A:=H63!Y96
M /..H(P1FN:N_ .L2W\=Y<ZA;Z@QL&MIH"GV8$Y@*HCIRJ9B9A@<'MR:]/HH
M \ZM_"FN>9&+E[:5+AH3+)+<-)+:I%,TBHK%<R<$#)Q@^U;_ (^@EETRU:*[
MF@ OK0%45""?M$?/S*>E=-6#XT_Y!-O_ -A"S_\ 2B.@"C]AN_\ H+7?_?J'
M_P"(H^PW?_06N_\ OU#_ /$5H44 9_V&[_Z"UW_WZA_^(H^PW?\ T%KO_OU#
M_P#$5H44 9_V&[_Z"UW_ -^H?_B*/L-W_P!!:[_[]0__ !%:%% &?]AN_P#H
M+7?_ 'ZA_P#B*/L-W_T%KO\ []0__$5H44 9_P!AN_\ H+7?_?J'_P"(H^PW
M?_06N_\ OU#_ /$5H44 9_V&[_Z"UW_WZA_^(H^PW?\ T%KO_OU#_P#$5H44
M 9_V&[_Z"UW_ -^H?_B*/L-W_P!!:[_[]0__ !%:%% &?]AN_P#H+7?_ 'ZA
M_P#B*/L-W_T%KO\ []0__$5H44 9_P!AN_\ H+7?_?J'_P"(H^PW?_06N_\
MOU#_ /$5H44 9_V&[_Z"UW_WZA_^(H^PW?\ T%KO_OU#_P#$5H44 9_V&[_Z
M"UW_ -^H?_B*/L-W_P!!:[_[]0__ !%:%% &?]AN_P#H+7?_ 'ZA_P#B*/L-
MW_T%KO\ []0__$5H44 9_P!AN_\ H+7?_?J'_P"(H^PW?_06N_\ OU#_ /$5
MH44 9_V&[_Z"UW_WZA_^(H^PW?\ T%KO_OU#_P#$5H44 9_V&[_Z"UW_ -^H
M?_B*/L-W_P!!:[_[]0__ !%:%% &?]AN_P#H+7?_ 'ZA_P#B*/L-W_T%KO\
M[]0__$5H44 9_P!AN_\ H+7?_?J'_P"(H^PW?_06N_\ OU#_ /$5H44 9_V&
M[_Z"UW_WZA_^(H^PW?\ T%KO_OU#_P#$5H44 9_V&[_Z"UW_ -^H?_B*/L-W
M_P!!:[_[]0__ !%:%% &?]AN_P#H+7?_ 'ZA_P#B*/L-W_T%KO\ []0__$5H
M44 9_P!AN_\ H+7?_?J'_P"(H^PW?_06N_\ OU#_ /$5H44 9_V&[_Z"UW_W
MZA_^(H^PW?\ T%KO_OU#_P#$5H44 9_V&[_Z"UW_ -^H?_B*/L-W_P!!:[_[
M]0__ !%:%% &?]AN_P#H+7?_ 'ZA_P#B*/L-W_T%KO\ []0__$5H44 9_P!A
MN_\ H+7?_?J'_P"(H^PW?_06N_\ OU#_ /$5H44 9_V&[_Z"UW_WZA_^(H^P
MW?\ T%KO_OU#_P#$5H44 9_V&[_Z"UW_ -^H?_B*/L-W_P!!:[_[]0__ !%:
M%% &?]AN_P#H+7?_ 'ZA_P#B*/L-W_T%KO\ []0__$5H44 9_P!AN_\ H+7?
M_?J'_P"(J*[BFM+:2>?6+I8XQN8^5#_\16K7+WA/B/6/L<1/]F6C9G8=)'_N
MURXK$.C%*"O*6B7G_DMV<>-Q3H02IJ\Y:17G_DMWY$.A:=>:G*-6O;R>.3D6
MYV1DA/4@KC\A6]]AN_\ H+7?_?J'_P"(J^JA5"J % P .U+58;#JA#EO=O5O
MN^K*P>%6&I\E[MZM]V]W_6RT,_[#=_\ 06N_^_4/_P 13?LMQ%=V+2W\\Z_:
M4&QTC /7^ZH/ZUI5!<_ZZR_Z^H_ZUT'4='1110!6U"_M--MS<:A=06L (4R3
MR!%R> ,GBG3W=M;KF>XAB 0RDNX7Y!C+<]AD9/N*Y?XF:/=:QH<":?9BZN8;
MA)% F$;)SR1N5E/'4,.F:YF_\#>(I=3M+^:YTV\,=EY,EN(O*3Y6@80J>0$)
MC<CCZCG@ ])35=/=K54O[1FNQNMP)E)F'JG/S?A6;XT_Y!-O_P!A"S_]*(ZY
M"W\):LMYYC6-DBWEPDY839.GA;AI=J?+\V0>V!N)[<UTWCZ*XDTRU,%UY*B^
MM 1Y8;)^T1X/- %NBJ'V74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=
M0_Z"8_\  5?\:/LNH?\ 03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!
M,?\ @*O^- %^BJ'V74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"
M8_\  5?\:/LNH?\ 03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\
M@*O^- %^BJ'V74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\
M 5?\:/LNH?\ 03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^
M- %^BJ'V74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\
M:/LNH?\ 03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^
MBJ'V74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\:/LN
MH?\ 03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^BJ'V
M74/^@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\:/LNH?\
M03'_ ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^BJ'V74/^
M@F/_  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\:/LNH?\ 03'_
M ("K_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^BJ'V74/^@F/_
M  %7_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\:/LNH?\ 03'_ ("K
M_C0!?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^BJ'V74/^@F/_  %7
M_&C[+J'_ $$Q_P" J_XT 7Z*H?9=0_Z"8_\  5?\:/LNH?\ 03'_ ("K_C0!
M?HJA]EU#_H)C_P !5_QH^RZA_P!!,?\ @*O^- %^BJ'V74/^@F/_  %7_&J6
MKS7>F6$ES-J@.T85?LRY9NPZU%2I&G%SF[)$5:D*4'4F[):L3Q+J$J^7ING\
MWUUP,?\ +->[&M'2=/BTRQCMH>0O+-W9NYK$T+2;\YU*YO/*OKE<N#"&VKV
MST^E;'V74/\ H)C_ ,!5_P :X\+3E4D\555F]EVC_F]W]W0\_!4YUIO&5E9O
M2*_EC_F]W\ET+]%4/LNH?]!,?^ J_P"-'V74/^@F/_ 5?\:[STR_4%S_ *ZR
M_P"OJ/\ K5?[+J'_ $$Q_P" J_XTSR+N.[L6GO1,GVE/D\A4]>X- '74444
M%%(S*BY<A1ZDXH+J,Y8# R>>E "U@^-/^03;_P#80L__ $HCK<61&V[64[NF
M#UK#\:?\@FW_ .PA9_\ I1'0 ZBBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** $9@JEF("@9)
M/:N8LU/B+6/ML@/]F6C8@4])'_O5)X@N)-2O5T6Q8C=\UU(/X$]/K6_:V\=I
M;1P0+MBC&U17FR_VRMR?\NX/7SEV]%U\].AY$_\ ;Z_L_P#EU!Z_WI+IZ1W?
MG9=&2T445Z1ZX4444 %07/\ KK+_ *^H_P"M3U!<_P"NLO\ KZC_ *T ='11
M10!Q/Q9TR74_#L*06=Y>/'<QR".W5)!U_CC8C>OT((ZY&*YK6= U2]N8S_8U
M];R-9"+4'MI(W$N50_NF=R6(90NQQMQDYSU];HH \HL]!U?SM/\ .TJ?S%:(
M65P/+C^QHL[,QE5"%#,A&=@(/3BNQ\?)=-IEK]FGAC3[=:9#PER3]HCP<AA7
M35@^-/\ D$V__80L_P#THCH H^3JG_/]9_\ @&W_ ,<H\G5/^?ZS_P# -O\
MXY6A10!G^3JG_/\ 6?\ X!M_\<H\G5/^?ZS_ / -O_CE:%% &?Y.J?\ /]9_
M^ ;?_'*/)U3_ )_K/_P#;_XY6A10!G^3JG_/]9_^ ;?_ !RCR=4_Y_K/_P
MV_\ CE:%% &?Y.J?\_UG_P" ;?\ QRCR=4_Y_K/_ , V_P#CE:%% &?Y.J?\
M_P!9_P#@&W_QRCR=4_Y_K/\ \ V_^.5H44 9_DZI_P _UG_X!M_\<H\G5/\
MG^L__ -O_CE:%% &?Y.J?\_UG_X!M_\ '*/)U3_G^L__  #;_P".5H44 9_D
MZI_S_6?_ (!M_P#'*/)U3_G^L_\ P#;_ ..5H44 9_DZI_S_ %G_ . ;?_'*
M/)U3_G^L_P#P#;_XY6A10!G^3JG_ #_6?_@&W_QRCR=4_P"?ZS_\ V_^.5H4
M4 9_DZI_S_6?_@&W_P <H\G5/^?ZS_\  -O_ (Y6A10!G^3JG_/]9_\ @&W_
M ,<H\G5/^?ZS_P# -O\ XY6A10!G^3JG_/\ 6?\ X!M_\<H\G5/^?ZS_ / -
MO_CE:%% &?Y.J?\ /]9_^ ;?_'*/)U3_ )_K/_P#;_XY6A10!G^3JG_/]9_^
M ;?_ !RCR=4_Y_K/_P  V_\ CE:%% &?Y.J?\_UG_P" ;?\ QRCR=4_Y_K/_
M , V_P#CE:%% &?Y.J?\_P!9_P#@&W_QRCR=4_Y_K/\ \ V_^.5H44 9_DZI
M_P _UG_X!M_\<H\G5/\ G^L__ -O_CE:%% &?Y.J?\_UG_X!M_\ '*/)U3_G
M^L__  #;_P".5H44 9_DZI_S_6?_ (!M_P#'*/)U3_G^L_\ P#;_ ..5H44
M9_DZI_S_ %G_ . ;?_'*/)U3_G^L_P#P#;_XY6A10!G^3JG_ #_6?_@&W_QR
MCR=4_P"?ZS_\ V_^.5H44 9_DZI_S_6?_@&W_P <H\G5/^?ZS_\  -O_ (Y6
MA10!G^3JG_/]9_\ @&W_ ,<H\G5/^?ZS_P# -O\ XY6A10!G^3JG_/\ 6?\
MX!M_\<H\G5/^?ZS_ / -O_CE:%% &?Y.J?\ /]9_^ ;?_'*S=<OM1TNW0_:[
M6:>5MD42VK L?^_A_E6]=3QVMO)/.P6*,;F)KG]!@DU2^;6KU2%/RVL9_@7^
M]]:XL76G=4*/QR_!=7_EYGG8ZO.ZPU!^_/K_ "KK+]%W8_1=&U#3X787EMY\
MYWRL]L7;/IG>,_E6CY.J?\_UG_X!M_\ '*T**Z*-&-&"IPV1UX>A##TU2IK1
M&?Y.J?\ /]9_^ ;?_'*/)U3_ )_K/_P#;_XY6A16IL9_DZI_S_6?_@&W_P <
MH\G5/^?ZS_\  -O_ (Y6A10!G^3JG_/]9_\ @&W_ ,<IOEWRW=B;FZMY8_M*
M95+<H>_<N?Y5I5!<_P"NLO\ KZC_ *T ='1110 45Q'Q<M)+OPW"(HK^8I<Q
ML8[2-I W/21%8,5_W>AP>.M<UK%CJT]];2P:9K$4QM4&J1B1V#IM0D1R[\.>
M"H0 -RQ[\@'KE8/C3_D$V_\ V$+/_P!*(ZX2TTW4Q?6K+8ZL@,R-I99WVVD(
MG8N)>?ERF.&S\N%[8KLO'RW9TRU^RR6ZI]NM,B2,L2?M$>.C#B@"W16?LU;_
M )[Z?_WX?_XNC9JW_/?3_P#OP_\ \70!H45G[-6_Y[Z?_P!^'_\ BZ-FK?\
M/?3_ /OP_P#\70!H45G[-6_Y[Z?_ -^'_P#BZ-FK?\]]/_[\/_\ %T :%%9^
MS5O^>^G_ /?A_P#XNC9JW_/?3_\ OP__ ,70!H45G[-6_P">^G_]^'_^+HV:
MM_SWT_\ [\/_ /%T :%%9^S5O^>^G_\ ?A__ (NC9JW_ #WT_P#[\/\ _%T
M:%%9^S5O^>^G_P#?A_\ XNC9JW_/?3_^_#__ != &A16?LU;_GOI_P#WX?\
M^+HV:M_SWT__ +\/_P#%T :%%9^S5O\ GOI__?A__BZ-FK?\]]/_ ._#_P#Q
M= &A16?LU;_GOI__ 'X?_P"+HV:M_P ]]/\ ^_#_ /Q= &A16?LU;_GOI_\
MWX?_ .+HV:M_SWT__OP__P 70!H45G[-6_Y[Z?\ ]^'_ /BZ-FK?\]]/_P"_
M#_\ Q= &A16?LU;_ )[Z?_WX?_XNC9JW_/?3_P#OP_\ \70!H45G[-6_Y[Z?
M_P!^'_\ BZ-FK?\ /?3_ /OP_P#\70!H45G[-6_Y[Z?_ -^'_P#BZ-FK?\]]
M/_[\/_\ %T :%%9^S5O^>^G_ /?A_P#XNC9JW_/?3_\ OP__ ,70!H45G[-6
M_P">^G_]^'_^+HV:M_SWT_\ [\/_ /%T :%%9^S5O^>^G_\ ?A__ (NC9JW_
M #WT_P#[\/\ _%T :%%9^S5O^>^G_P#?A_\ XNC9JW_/?3_^_#__ != &A16
M?LU;_GOI_P#WX?\ ^+HV:M_SWT__ +\/_P#%T :%%9^S5O\ GOI__?A__BZ-
MFK?\]]/_ ._#_P#Q= &A16?LU;_GOI__ 'X?_P"+HV:M_P ]]/\ ^_#_ /Q=
M &A16?LU;_GOI_\ WX?_ .+HV:M_SWT__OP__P 70!H45G[-6_Y[Z?\ ]^'_
M /BZ-FK?\]]/_P"_#_\ Q= &A16?LU;_ )[Z?_WX?_XNC9JW_/?3_P#OP_\
M\70!H45G[-6_Y[Z?_P!^'_\ BZR-<O\ 5(7BL(I;22[NOE40Q,K(/[V2QK'$
M5XT*;J2_X=]$O4Y\5B88:DZL^GWM]$O-B7S'Q#J_V"$G^SK5MUPXZ2-_=KIU
M4(H5 %51@ =A6)I.F:AI=DMM;S6! Y9C ^6/J?GJYLU;_GOI_P#WX?\ ^+K'
M"4)03JU?CEOY=DO)?GJ88'#3IIUJW\2>K\NT5Y+\7=FA16?LU;_GOI__ 'X?
M_P"+HV:M_P ]]/\ ^_#_ /Q==AWFA16?LU;_ )[Z?_WX?_XNC9JW_/?3_P#O
MP_\ \70!H45G[-6_Y[Z?_P!^'_\ BZ-FK?\ /?3_ /OP_P#\70!H5!<_ZZR_
MZ^H_ZU6V:M_SWT__ +\/_P#%TW;?B[L?M4MHT7VE,B*)E;//<L: .NHHHH *
M*** "L'QI_R";?\ ["%G_P"E$=;U8/C3_D$V_P#V$+/_ -*(Z '4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M44,0JDL0 !DD]J *FJW\6FV,ES.?E4<+W8]@*S/#5A+NDU34!F^NN0#_ ,LT
M[ 54M@?$>L?:G!_LNS;$2GI*_K]*ZFO-H_[75]N_@C\/F^LOT7W]3R:'^W5O
MK+_AQ^#S?67Z1^;ZA1117I'K!1110 4444 %%%% !4%S_KK+_KZC_K4]07/^
MNLO^OJ/^M '1T444 <1\6YKB#PW#);7EU:@7,>\V_FKO&?NEXP60>_0G [UR
M^H:G=7MS<)9ZEK>GW8LU-VMT97VLR(2B1QJ I09+2* <Y'(Z>OD C! (]Z*
M/);"^U1I=-4R:O'*IB2P57N'BNE\]A*\A?)(*8/[P_*,$=C79^/C=_V9:_95
MMRGVZTSYK,#G[1'CH.E=/6#XT_Y!-O\ ]A"S_P#2B.@"CG5O[FG?]]R?X49U
M;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?
MX49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?
M]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O
M[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &
M?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:
M%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<
MG^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YI
MW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U
M;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?
MX49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?
M]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O
M[FG?]]R?X49U;^YIW_?<G^%:%% &?G5O[FG?]]R?X49U;^YIW_?<G^%:%% &
M?G5O[FG?]]R?X49U;^YIW_?<G^%:%8NH>([.VD\BVW7ET>!% -W/N:QK8BG0
MCS596,,1BJ.&CS5I)+^MN_R++OJJ(S,NG!5&22\G _*N1NO$5WKC_P!EP""
M3OL\X,V&'IR.,ULM9:SK(/\ :$PL+1NL$/+L/0G_ #]*BTOP=%9:FERURTD<
M;;D3;@Y[9->1C*F,Q3C"A!JF]V]&U^:5OF>#CZN/QKA3PU-QI-VDW9-KKI>Z
M5OF:MG;ZC9VL=O!%IRQQC:!OD_PJ;.K?W-._[[D_PK0HKW(Q44HQV1]'&*A%
M1BK)&?G5O[FG?]]R?X49U;^YIW_?<G^%:%%,HS\ZM_<T[_ON3_"C.K?W-._[
M[D_PK0HH S\ZM_<T[_ON3_"C.K?W-._[[D_PK0HH S\ZM_<T[_ON3_"C.K?W
M-._[[D_PK0HH S\ZM_<T[_ON3_"FYO\ [78_:ELQ%]I3/E,Q;//J*TJX_P 8
M>.] \.7^DV]_?P&XEOHD:*.0,T2\Y=QGA1ZFMJ&'JXB?LZ,7)]D)M)79Z911
M16(PHKBOBS?75AX=AFM-1>P_TF,.R$H9%S]WS K;/Q&#C'>N6O\ Q)=3WI.G
MZSJ<+"WC-]#<(@:%65"1'&%^^@)9FY Y'/8 ]>K!\:?\@FW_ .PA9_\ I1'7
M"6FMZFU];*-4OY LZ)IRM'QJ$1G96:3Y><(!SQP W>NS\?3S1:9:K%:2S@WU
MH2R,@ /VB/CYB.M %JBL_P"VWG_0)N?^_P!#_P#%T?;;S_H$W/\ W^A_^+H
MT**S_MMY_P! FY_[_0__ !='VV\_Z!-S_P!_H?\ XN@#0HK/^VWG_0)N?^_T
M/_Q='VV\_P"@3<_]_H?_ (N@#0HK/^VWG_0)N?\ O]#_ /%T?;;S_H$W/_?Z
M'_XN@#0HK/\ MMY_T";G_O\ 0_\ Q='VV\_Z!-S_ -_H?_BZ -"BL_[;>?\
M0)N?^_T/_P 71]MO/^@3<_\ ?Z'_ .+H T**S_MMY_T";G_O]#_\71]MO/\
MH$W/_?Z'_P"+H T**S_MMY_T";G_ +_0_P#Q='VV\_Z!-S_W^A_^+H T**S_
M +;>?] FY_[_ $/_ ,71]MO/^@3<_P#?Z'_XN@#0HK/^VWG_ $";G_O]#_\
M%T?;;S_H$W/_ '^A_P#BZ -"BL_[;>?] FY_[_0__%UEW_BR&R<)+8W#2$XV
M1RQ.1^3UG5K4Z,>:I))>9C6Q%+#QYZLE%>9TE1W%Q#;1F2XE2)!_$YP*YNXU
M#7[^(MIMA]FB[-*PWL/8' %06^BR-()M3L+^_G]99X@H^@WUQ_6ZE7_=X7\Y
M:+_-_=\SA^O5:^F%IMK^:7NK_P"2?W?,H:CXTN4U-Q9")K1&P 5Y<>N>U=CI
MVJ6>H1JUM<1NQ&2F[YA^%8-Q#IW]J6T4VA[;V1&>*'SX5+JN,D+OYQD5)?:3
M!>'<V@W$4G7?#-$A_1\5ST,/F5"4IU)*:>J3NONTT_$X\+A\UP\YSJ3C43>S
M;5O1V=O34Z>BN0AMO$=I*JV7G/!_=O'C;'XAB:L3^);O3XB=5T>Y##^* AE/
MYD ?G73]?C#2O%P]=5]ZNOOL=O\ :<:>F)@Z?FU>/_@2NOOL=/16%8>(TOP/
MLME*Y/\ #Y\(;\B]7?MMY_T";G_O]#_\7793J0J+F@[KR.^G5A5CSTY)KRU-
M"BL_[;>?] FY_P"_T/\ \71]MO/^@3<_]_H?_BZLT-"BL_[;>?\ 0)N?^_T/
M_P 71]MO/^@3<_\ ?Z'_ .+H T**S_MMY_T";G_O]#_\71]MO/\ H$W/_?Z'
M_P"+H T**S_MMY_T";G_ +_0_P#Q='VV\_Z!-S_W^A_^+H T**S_ +;>?] F
MY_[_ $/_ ,71]MO/^@3<_P#?Z'_XN@#0HK/^VWG_ $";G_O]#_\ %T?;;S_H
M$W/_ '^A_P#BZ -"BLR;4YX(S)/ID\<8ZLT\( _\?K*C\4S7[/#I.F7$DRG&
MZ0KL'OE2?Z5SU\52H:3>KV6[?HMSEQ.-HX:RJ2U>RW;]$M6=.[*BEG(51R23
M@"L*[\2P>:;?2X9+^Y](Q\H^IK+;3-5OIBVN075P@/RPP2Q)'^K _I6Y:/)9
MQ".UT.:)/19(1G_Q^N?FQ6(^%>SCYZR^[9?._H<O/C,5\"]E'N]9?=LOG?T*
M TG4]5^;6KOR8#_R[6YQ^9__ %UMZ?IUII\>RS@2,=R!R?J:A^VWG_0)N?\
MO]#_ /%T?;;S_H$W/_?Z'_XNMJ.#I49<^\N[U?\ 7H;X? 4:$O:)<T_YGJ_O
MZ>BLC0HK/^VWG_0)N?\ O]#_ /%T?;;S_H$W/_?Z'_XNNH[30HK/^VWG_0)N
M?^_T/_Q='VV\_P"@3<_]_H?_ (N@#0HK/^VWG_0)N?\ O]#_ /%T?;;S_H$W
M/_?Z'_XN@#0HK/\ MMY_T";G_O\ 0_\ Q=<QXE^)6B>&PXU=A'*O6".>&23_
M +Y5R?SK6C0JUY<E*+D^R5Q-I:L[>BO)H_B7XC\21J/ _@R]=&_Y>]3(AB7W
MP#@_]]54D\'^//$4C?\ "8ZY>16I/-GH[Q1(1[L6!_#!KTO[)='7%U(T_*]Y
M?^ QO;YV(]I?X5<[[Q+X\\,^&MPU?6+6*9>L"-YDG_?*Y(_'%<>?B7K_ (A.
MSP'X0O+J-N%OM1_<P_4#N/Q%:OAKP%X>\.E7L/"+27"\^?<RQ329]<L^!^ K
ML?MMYC']DW./^NT/_P 71[?+\/\ PJ;J/O-V7_@,=?OD%IO=V/./^$%\:>)/
MF\9^+Y+6V;K8Z0OECZ%^/Y&H[[X$^#7FL]J:@FZ5(GQ<9+YSDDD'FO3/MMY_
MT";G_O[#_P#%UQOBCXEZ;H.JV]GJ%C?":*1)V\HQ.-O/&0_7VJ*G$.+HJ\*G
MLX]HI17X;_.YU83+JN-G[*A!SEN>IZ59+INF6ME')++';Q+$KRMN=@HP,GN:
MM5F>&M9@\0:%9ZK:)+'!=)O190 P&2.<$CM6G7E\_M/?O>Y%2G*E)TYJS6C^
M0CHKKM=0R]<$9%&U<YVC/KBEHH(# XX''2L'QI_R";?_ +"%G_Z41UO5@^-/
M^03;_P#80L__ $HCH =1110 4444 %%%% !1110 4444 %%%% !1110 444=
M!D]* "BL?4/$6GV;>6)3<3]!% -Q_P *HS7>MWL1D"PZ19]YKAANQ^/3]*XI
MXZDI<E.\Y=HZ_?T7S9Y]3,Z$9.G3O.7:.OWO9?-HZ"ZNK>TCWW4T<2^KMBL.
M3Q(UTYCT6RFO&Z>81M0?C_\ JKB]4\7> ]"G)U36CK.H9QY<.;@D^F%X_,TV
M/X@>*M;01^"_ US';GA;K4F$$8'J%X_0FO1I9+FV*CSSBJ,.[:3^^5E]RD8.
M6,Q&DI*FNR]Z7W[+[GZG:?V/JFI<ZO?F*(_\N]MP/H3_ /KIUS<^&?"46^]N
M["P('+3RCS#^?-<8?!OC_P 0<^)O&0TVW;[UKH\>W'MOX/\ .M/1?@_X0TV0
M37%C)JEUU,VH2F7)_P!W[OY@UT4LFRS"2YZ];GG_ '4Y/_P*5DODFC6C@*5.
M7M%&\OYI.[_X'RL4KWXRZ++,UOX9T[5?$%UG %I;E4S[L?Z U +[XJ^(O^/7
M3M+\,6K?QW+>;,!].>?J!7J%G:V]E"(;*"&WB48"1($ 'T%35U_7\+1_W>@O
M6;YG]VD?P9W<LGNSY[U7X3?$:[\31ZJ?%UM-<0';#=O/+'(BGKA0A"]3P#@U
MU_V7XK^'\?9[S2/$]LO\,R^1,?Y#]:]5HK:KQ!7KJ,:U.$DE:S@OTLU\FA*D
MELV>5I\7'TMA'XS\*:SHK#[TRQ^=#]<\''TS77:#X\\+:^H&F:Y92NW_ "R=
M_+?_ +Y;!KI6 ="K@,IZJ1D&N1\0?#;PCKQ9K_0[59FY,UN/)?/KE<9_'-8^
MVRZO_$IRIO\ NOF7W2U_\F'::V=S9OO#VF7OS26RHYYWQ?(?KQ5+^R=7L/\
MD&:F9HQTANAG]:XW_A5FJ:*2W@OQGJVG*#E;:Z/GP_D>/TH.L?%+P_\ \A+0
M=-\16R]9=/D\N7'^Z>I^@KCGP[A,1+GPE:/-ZNG+\;1?WLX*F7X>4N?D<)=X
MZ/\ #?YH[+^W[RR.W6-,FB'_ #UA^=?\_C6I8:QI]^!]ENHV8_PD[6_(UP%C
M\9_#XF%OXBL]4T"Y)VE+VV8IG_>']0*Z>U/A;Q3'YNG75A=LW\=K, _Y#^HK
MBQ.4YK@%>:O'^\ORE'1_<2H8RE_"J*HNTM']Z_6)T]%<Y_8VJ6'_ ""M39T'
M2&Z&X?3/:C^W;^QXU?2Y57IYUO\ .O\ G\:XOKZI_P >#AY[K[U?\;%?VDJ7
M^]4Y0\]X_>K_ (V.CHK.L-:TZ_Q]GNHRW]QCM;\C6C773JPJQYJ;37D=U*M3
MK1YZ4E)>3N%%%%:&H455U#4;33X]]Y.D8[ GD_0=:Q/[6U/53MT:T\B \?:;
M@8_(?_KKEK8RE1ER7O+LM7_P/F<6(S"C0E[-OFG_ "K5_=T]79&_=W<%G$9+
MJ9(D]6.,U@OKUWJ#&/0;-I1T-Q,-J#Z5+:>&H/-%QJDTE_<]<RGY1]!6\JA%
M"H JC@ # %8\N*Q'Q/V<?+67W[+Y7]3#DQF*^-^RCV6LOOV7ROZG/0^'#<R"
M?7+J2]E'(C!VQK]!6_##'!&(X8UCC'15& *?1710PM*AK!:O=[M^KW.K#8*C
MAKNG'5[O=OU;U84445T'4%%%* 3T&: $HJ.>>&W_ ./B:*+_ *Z.%_G7&:K\
M5/!^E75];WFKQB:T949(U,AD)&?DVYW>A]#710PE?$NU&#EZ)L3DH[L[>EZU
MY#=?%'7=8!'A#PM*EN>E_K$BV\0]P"1G\S7.ZD9=5R?'GQ(583][3M"4[/\
M=+*.?Q!KLEEL</KC:T:7DW>7_@*O;YM&M##U\2[8>G*?HFSU?Q+X^\+^&U8:
MKK-JDJ_\L8V\R3_OE<FN1/Q(\2>(24\"^#[N6(\"^U,^3$/<#//Y_A6/X;E\
M&Z+(I\)^"=2U2['2YF@WL3ZAFSC\ *ZX:SX^U$8L?#MCIL?17O)]Q'_ 0<_I
M6?\ :&64/X%.55]Y72_\!C^LCN_L/&K6ORTU_>E%/[F[_@9/_"!>,/$HW>-?
M%\L-NWWK#2%\M/H6XR/J#72^'?ASX1\,*LUGI5MYR\_:KL^:X/KN;@?ABJ/_
M  COC;4/^0EXKBLT/6.Q@QCZ-P:$^%VF3/OUC4]7U.3N9[@@'^OZUE6SO'5H
M^S@N6'96BONCO\QK+L%2UK8A-_W8RE^+Y5^)T6H>+O#VG B[UBR0K_"L@8_D
M,US\WQ2T-F*Z7;ZEJ;] +:V.,_4XK:T[P/X9T[!MM%L]PZ-(GF'\VS700Q1P
M*%AC2-1P BA?Y5YMJTMVE^)?M,LI_#"<_5J*^Y)O\3@?^$K\7ZA_R"/!SPH>
MDE]-M'UQQ2C3_B'J/_'UK&EZ4A[6T7F./S&/UKT"BE[!OXI-_A^0?VI"'\"A
M"/JG)_\ DS:_ \__ .%<27O.O>)M8O\ /WHUD\M#^'-8^N?!S2YKVV;3[V>T
MAD=(2C#S#DYRV2:]8J"Y_P!=9?\ 7U'_ %I/"49*SB:4^(<QI2YJ=6WDDDON
MM;\"YX2T5?#OARQTE)C.MJFP2%=I;DGI^-:]%%=$8J*21Y-6K*M.52;NV[OU
M9QGQ4U.\TK0()K#4TTYC<HKN61&=<\JK.K*#WY'(!%9VKZYK)MC-:ZE':P7&
MCQW,+7$*PF)R\8+N2' .&/&"!WSUKT">&*XC,<\:21D@E77(X.1Q]:<R*V=R
MJ<C:<CJ/2F9GE=CXIU*26R4ZM,)8VBCBA<0R#4BT[)(P=8UW*% P4"XZG-=A
MX^N'ATRU5+2><&^M"6CV8&+B/CEAR:Z,11C9B-!Y8PG'W?IZ5B>-/^03;_\
M80L__2B.@"C_ &A-_P! J_\ _(7_ ,<H_M";_H%7_P#Y"_\ CE:%% &?_:$W
M_0*O_P#R%_\ '*/[0F_Z!5__ .0O_CE:%% &?_:$W_0*O_\ R%_\<H_M";_H
M%7__ )"_^.5H44 9_P#:$W_0*O\ _P A?_'*/[0F_P"@5?\ _D+_ ..5H44
M9_\ :$W_ $"K_P#\A?\ QRC^T)O^@5?_ /D+_P".5H5!<7EK;C,]Q#'_ +[@
M5,I**O)V)E.,%>3LBM_:$W_0*O\ _P A?_'*/[0F_P"@5?\ _D+_ ..54NO%
M6CVP):\5\?W%)_7I6!J7Q$T[8\&GN/M3C"%V7@_3-<D\PP\4VI<UNVOY'G5L
MYP5%-NHG;HM7^!U7]H3?] J__P#(7_QRJ][KR6,>^[L;R)?]IHLG\/,K@X-:
M\47L<EMH[-=W+<X>14VCUW$<#Z56_P"%:>)-;D\SQ'XE%G$WWH--0LY]C*_]
M!^%/+\1+,J?M:5H1VO-_E&-Y/\%YG)ALWK9A3Y\'2T[R=E]RNW^'J;^L_$O3
M+&#<&BMSC.;R54Q_P$$Y/L*X/_A9@\0N8[#3]?UN;<0+>S@\J+ZEN3CZBN]T
M'X2^#M(<2_V7]ON>IFOG,S$^N#\OY"NYMX(;:$16T4<,0Z)&H51^ KT_JF71
MUK\]=]F_9P_\!C>3^<C?^S:E?7%U'+R6D?N6_P VSQJ*'XFW85-,T;3O#-JX
MYD39<7"_4LU30_"Y=0E$_C&\\4:]+U,;SQQQ?3 DSCZ$5['17;#-JM"/)@XQ
MHK^Y%)_^!:R_$]"GAJ=.*A%67;I]VQR6@Z#HN@(%T?PDUJ1QO6.$N?JQD)/Y
MUO'49SUTO4#^,7_QRK]%>?5JU*TN>I)M]V[FR26QG_VA-_T"K_\ \A?_ !RC
M^T)O^@5?_P#D+_XY6A168S/_ +0F_P"@5?\ _D+_ ..4?VA-_P! J_\ _(7_
M ,<K0HH S_[0F_Z!5_\ ^0O_ (Y1_:$W_0*O_P#R%_\ '*T** ,_^T)O^@5?
M_P#D+_XY1_:$W_0*O_\ R%_\<K0HH S_ .T)O^@5?_\ D+_XY1_:$W_0*O\
M_P A?_'*T** ,B]D2_A,5]H-S<Q$8*3)"X_5ZX36OA?X5U&0S6_AO5-+N>TV
MGRQPD?\  ?,*_I7J5#?*,MP/?BNK#8W$85WH5''T9+BI;H\:'AGX@Z!SX7\0
M:C>P+]VUU>.)Q]-V\D#Z8J^/'?CC0D'_  E7@>6YA ^:YTJ3S!]2O./QKT>\
MUG2['/VS4;*#'_/6=5_F:P[SXB^%+3._68'8=H5:3/Y#%=,LZA+_ 'NG"?G;
ME?WQM^*9TT<MQ-;^!"3]$V<7'\3_  %KER8+NWNK*[_Z>8TMSG_>+@?G7368
MOQ")O#DU[<08R$=X94(^HD-8NN>,O!OB!6BG\.W.ML?^G $G\>M<)>^#I)YC
M<>"/#'B;0;DG*LMX8DSZE6_H17!4H9#BY<\7*E/NES?C'E?X,BKPCB)2]I.D
MH2[\RIO[[K\3UW4O$FK:9;JM]IT4<[_<D#94^O /]:@MM=US6;?;86ZH%(66
M6+!89] Q KQ/QS<_$SPUI-A+XBO5N8#*R0AU623..=Q7KQZFM'X9S_$SQ'IE
MW<:!J&GV%IYP24SQ@-N"C[H*GC'I4/A7,)M8E8J+PSTO=Q=^SO%/]3Y^>4XV
M.+<*N)?LDMDTY;VMS15OFG>VA[3I^F0VTGG7&E:E>774RSF)N?8>96V+Z?'&
MD:ACV\K_ ..5YBO@/XBWASJ7Q#>%3U6TB(Q_Z#4J_!V2Y8'6/&WB.\]0DOEY
M_,M7=0RG X6/+[>*_P ,9/\ %I7^\]2AAZ.&CR4(67RU]=;OYGH4^N) I,]G
M<1 ==\L"_P Y*PK[XE>&[#(N[V*-AU7[3;EOR$F:PH?@=X.!!O$U*^8=[B\8
MY_[YQ6Q9_"?P/:8\OP]:OC_GJS2?^A$UMR9;#><Y>D8Q_.3_ "-U=[Z?C_D8
M=Y\=_!=LVT2:A.WI#;AOUW 51G^/WA\_\@_2-:NV]/*5/ZFO1;3P=X:M,?9M
M!TR+']VW7_"M6&PLX0!#9VT>/[L2C^E3]8P$/@H2?^*?^45^9HHT_M2?W)?J
MSQ>3XV:U=-C2/ ]W)GIYTC?T6H'\=_%?4/\ D'^%(+9#T+VTCX_$D"O> <#
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
M_P!.&H_]^/\ Z]:'&: )'0XH))Z\UG_VG_TX:C_WX_\ KT?VG_TX:C_WX_\
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
M36A10!G_ -K0?\\+_P#\ I?_ (FC^UH/^>%__P" 4O\ \36A10!G_P!K0?\
M/"__ / *7_XFC^UH/^>%_P#^ 4O_ ,36A10!G_VM!_SPO_\ P"E_^)H_M:#_
M )X7_P#X!2__ !-:%% &?_:T'_/"_P#_  "E_P#B:/[6@_YX7_\ X!2__$UH
M44 9_P#:T'_/"_\ _ *7_P")H_M:#_GA?_\ @%+_ /$UH44 9_\ :T'_ #PO
M_P#P"E_^)H_M:#_GA?\ _@%+_P#$UH44 9_]K0?\\+__ , I?_B:/[6@_P">
M%_\ ^ 4O_P 36A10!G_VM!_SPO\ _P  I?\ XFC^UH/^>%__ . 4O_Q-:%%
M&?\ VM!_SPO_ /P"E_\ B:/[6@_YX7__ (!2_P#Q-:%% &?_ &M!_P \+_\
M\ I?_B:/[6@_YX7_ /X!2_\ Q-:%% &?_:T'_/"__P# *7_XFC^UH/\ GA?_
M /@%+_\ $UH44 9_]K0?\\+_ /\  *7_ .)H_M:#_GA?_P#@%+_\36A10!G_
M -K0?\\+_P#\ I?_ (FC^UH/^>%__P" 4O\ \36A10!G_P!K0?\ /"__ / *
M7_XFC^UH/^>%_P#^ 4O_ ,36A10!G_VM!_SPO_\ P"E_^)H_M:#_ )X7_P#X
M!2__ !-:%% &?_:T'_/"_P#_  "E_P#B:/[6@_YX7_\ X!2__$UH44 9_P#:
MT'_/"_\ _ *7_P")H_M:#_GA?_\ @%+_ /$UH44 9_\ :T'_ #PO_P#P"E_^
M)H_M:#_GA?\ _@%+_P#$UH44 9_]K0?\\+__ , I?_B:/[6@_P">%_\ ^ 4O
M_P 36A10!G_VM!_SPO\ _P  I?\ XFC^UH/^>%__ . 4O_Q-:%% &?\ VM!_
MSPO_ /P"E_\ B:/[6@_YX7__ (!2_P#Q-:%% &?_ &M!_P \+_\ \ I?_B:/
M[6@_YX7_ /X!2_\ Q-:%% &?_:T'_/"__P# *7_XFC^UH/\ GA?_ /@%+_\
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
M<'.&&0,J<'!''%:=<]X=T*[T[5]2U"_O(;B:\6-"((3$&V9P[@LV7((!(P,
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
?L!82,<QJ %7!.,#''ID^ISK444 %%%% !1110!__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343188868800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Dec. 12, 2024</div></th>
<th class="th"><div>Apr. 28, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">Oct. 31,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--10-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-39063<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">PHOTRONICS INC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000810136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">CT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">06-0854886<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">15 Secor Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Brookfield<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">CT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">06804<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">203<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">775-9000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">COMMON<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">PLAB<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFinStmtErrorCorrectionFlag', window );">Document Financial Statement Error Correction [Flag]</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,729,553,783<span></span>
</td>
</tr>
<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">63,335,388<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">34<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Deloitte & Touche LLP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Boston, Massachusetts<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorFirmId</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorLocation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentAnnualReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFinStmtErrorCorrectionFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 whether any of the financial statement period in the filing include a restatement due to error correction.</p></div>
<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-K<br> -Number 229<br> -Section 402<br> -Subsection w<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFinStmtErrorCorrectionFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityPublicFloat</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_IcfrAuditorAttestationFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193655872">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 598,485<span></span>
</td>
<td class="nump">$ 499,292<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermInvestments', window );">Short-term investments</a></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">12,915<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance of $1,126 in 2024 and $1,099 in 2023</a></td>
<td class="nump">200,830<span></span>
</td>
<td class="nump">194,927<span></span>
</td>
</tr>
<tr class="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">56,527<span></span>
</td>
<td class="nump">49,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_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">33,036<span></span>
</td>
<td class="nump">28,353<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">931,062<span></span>
</td>
<td class="nump">785,450<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">745,257<span></span>
</td>
<td class="nump">709,244<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">23,059<span></span>
</td>
<td class="nump">21,297<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">12,681<span></span>
</td>
<td class="nump">10,230<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">1,712,059<span></span>
</td>
<td class="nump">1,526,221<span></span>
</td>
</tr>
<tr class="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_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term debt</a></td>
<td class="nump">17,972<span></span>
</td>
<td class="nump">6,621<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">78,717<span></span>
</td>
<td class="nump">84,024<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">87,122<span></span>
</td>
<td class="nump">94,578<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">183,811<span></span>
</td>
<td class="nump">185,223<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt</a></td>
<td class="nump">25<span></span>
</td>
<td class="nump">17,998<span></span>
</td>
</tr>
<tr class="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 liabilities</a></td>
<td class="nump">47,464<span></span>
</td>
<td class="nump">47,391<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">231,300<span></span>
</td>
<td class="nump">250,612<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (Note 16)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract', window );"><strong>Equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $0.01 par value, 2,000 shares authorized, none issued and outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value, 150,000 shares authorized, 61,949 shares issued and outstanding at October 31, 2024, and 61,310 shares issued and outstanding at October 31, 2023</a></td>
<td class="nump">619<span></span>
</td>
<td class="nump">613<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">514,757<span></span>
</td>
<td class="nump">502,010<span></span>
</td>
</tr>
<tr class="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">691,807<span></span>
</td>
<td class="nump">561,119<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(86,319)<span></span>
</td>
<td class="num">(88,734)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total Photronics, Inc. shareholders' equity</a></td>
<td class="nump">1,120,864<span></span>
</td>
<td class="nump">975,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_MinorityInterest', window );">Noncontrolling interests</a></td>
<td class="nump">359,895<span></span>
</td>
<td class="nump">300,601<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total equity</a></td>
<td class="nump">1,480,759<span></span>
</td>
<td class="nump">1,275,609<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and equity</a></td>
<td class="nump">$ 1,712,059<span></span>
</td>
<td class="nump">$ 1,526,221<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 30: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_MinorityInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary 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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-24<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-23<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-5<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 34: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-3<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 39: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 43: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 44: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 45: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 46: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-15<br><br>Reference 47: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-16<br><br>Reference 48: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4I<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291271968">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, allowance</a></td>
<td class="nump">$ 1,126<span></span>
</td>
<td class="nump">$ 1,099<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract', window );"><strong>Equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized (in shares)</a></td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">2,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 (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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">150,000<span></span>
</td>
<td class="nump">150,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_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">61,949<span></span>
</td>
<td class="nump">61,310<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">61,949<span></span>
</td>
<td class="nump">61,310<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189506272">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Income - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_IncomeStatementAbstract', window );"><strong>Consolidated Statements of Income [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 866,946<span></span>
</td>
<td class="nump">$ 892,076<span></span>
</td>
<td class="nump">$ 824,549<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of goods sold</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">551,000<span></span>
</td>
<td class="nump">555,914<span></span>
</td>
<td class="nump">530,336<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">315,946<span></span>
</td>
<td class="nump">336,162<span></span>
</td>
<td class="nump">294,213<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">77,760<span></span>
</td>
<td class="nump">69,458<span></span>
</td>
<td class="nump">63,989<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">16,576<span></span>
</td>
<td class="nump">13,654<span></span>
</td>
<td class="nump">18,341<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_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">94,336<span></span>
</td>
<td class="nump">83,112<span></span>
</td>
<td class="nump">82,330<span></span>
</td>
</tr>
<tr class="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 );">Other operating expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(92)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(17)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">221,518<span></span>
</td>
<td class="nump">253,050<span></span>
</td>
<td class="nump">211,866<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Non-operating income (expense):</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign currency transactions impacts, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,168<span></span>
</td>
<td class="nump">2,466<span></span>
</td>
<td class="nump">27,344<span></span>
</td>
</tr>
<tr class="re">
<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 );">Interest income and other income, net</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">24,063<span></span>
</td>
<td class="nump">14,863<span></span>
</td>
<td class="nump">1,680<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_plab_InterestExpenseNetOfSubsidies', window );">Interest expense, net of subsidies</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(334)<span></span>
</td>
<td class="num">(433)<span></span>
</td>
<td class="num">(1,857)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax provision</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">247,415<span></span>
</td>
<td class="nump">269,946<span></span>
</td>
<td class="nump">239,033<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">63,567<span></span>
</td>
<td class="nump">70,312<span></span>
</td>
<td class="nump">59,791<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_ProfitLoss', window );">Net income</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">183,848<span></span>
</td>
<td class="nump">199,634<span></span>
</td>
<td class="nump">179,242<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Net income attributable to noncontrolling interests</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">53,160<span></span>
</td>
<td class="nump">74,149<span></span>
</td>
<td class="nump">60,456<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Photronics, Inc. shareholders</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 130,688<span></span>
</td>
<td class="nump">$ 125,485<span></span>
</td>
<td class="nump">$ 118,786<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 2.12<span></span>
</td>
<td class="nump">$ 2.05<span></span>
</td>
<td class="nump">$ 1.96<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 2.09<span></span>
</td>
<td class="nump">$ 2.03<span></span>
</td>
<td class="nump">$ 1.94<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average number of common shares outstanding:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">61,726<span></span>
</td>
<td class="nump">61,139<span></span>
</td>
<td class="nump">60,559<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">62,391<span></span>
</td>
<td class="nump">61,755<span></span>
</td>
<td class="nump">61,189<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">This table disaggregates revenue by the location in which it was earned.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_InterestExpenseNetOfSubsidies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount represents interest and debt expense, net of subsidies received.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_InterestExpenseNetOfSubsidies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of Net 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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193620688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Loss) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Consolidated Statements of Comprehensive Income (Loss) [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 183,848<span></span>
</td>
<td class="nump">$ 199,634<span></span>
</td>
<td class="nump">$ 179,242<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other comprehensive income (loss), net of tax of $0:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments</a></td>
<td class="nump">8,630<span></span>
</td>
<td class="nump">5,615<span></span>
</td>
<td class="num">(151,209)<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_plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax', window );">Other</a></td>
<td class="num">(81)<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="nump">423<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Net other comprehensive income (loss)</a></td>
<td class="nump">8,549<span></span>
</td>
<td class="nump">5,612<span></span>
</td>
<td class="num">(150,786)<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_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Comprehensive income</a></td>
<td class="nump">192,397<span></span>
</td>
<td class="nump">205,246<span></span>
</td>
<td class="nump">28,456<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest', window );">Less: comprehensive income attributable to noncontrolling interests</a></td>
<td class="nump">59,293<span></span>
</td>
<td class="nump">70,039<span></span>
</td>
<td class="nump">28,697<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss) attributable to Photronics, Inc. shareholders</a></td>
<td class="nump">$ 133,104<span></span>
</td>
<td class="nump">$ 135,207<span></span>
</td>
<td class="num">$ (241)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of tax amount of the appreciation (loss) for other adjustments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482739/220-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185618464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Loss) (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Consolidated Statements of Comprehensive Income (Loss) [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTax', window );">Other comprehensive income (loss), tax</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) allocated to other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193130864">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Equity - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss) [Member]</div></th>
<th class="th"><div>Non-controlling Interests [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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Oct. 31, 2021</a></td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 484,672<span></span>
</td>
<td class="nump">$ 317,849<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 20,571<span></span>
</td>
<td class="nump">$ 176,870<span></span>
</td>
<td class="nump">$ 1,000,562<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 );">Balance (in shares) at Oct. 31, 2021</a></td>
<td class="nump">60,024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">118,786<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">60,456<span></span>
</td>
<td class="nump">179,242<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(119,027)<span></span>
</td>
<td class="num">(31,759)<span></span>
</td>
<td class="num">(150,786)<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans</a></td>
<td class="nump">$ 10<span></span>
</td>
<td class="nump">4,280<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">4,290<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans (in shares)</a></td>
<td class="nump">954<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">6,308<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">6,308<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance', window );">Contribution from noncontrolling interest</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">24,995<span></span>
</td>
<td class="nump">24,995<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Purchases of treasury stock</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,522)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,522)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Purchases of treasury stock (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_TreasuryStockRetiredCostMethodAmount', window );">Retirement of treasury stock</a></td>
<td class="num">$ (2)<span></span>
</td>
<td class="num">(1,519)<span></span>
</td>
<td class="num">(1,001)<span></span>
</td>
<td class="nump">2,522<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesRetired', window );">Retirement of treasury stock (in shares)</a></td>
<td class="num">(187)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Oct. 31, 2022</a></td>
<td class="nump">$ 608<span></span>
</td>
<td class="nump">493,741<span></span>
</td>
<td class="nump">435,634<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(98,456)<span></span>
</td>
<td class="nump">230,562<span></span>
</td>
<td class="nump">1,062,089<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 );">Balance (in shares) at Oct. 31, 2022</a></td>
<td class="nump">60,791<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">125,485<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">74,149<span></span>
</td>
<td class="nump">199,634<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">9,722<span></span>
</td>
<td class="num">(4,110)<span></span>
</td>
<td class="nump">5,612<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="nump">268<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">273<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans (in shares)</a></td>
<td class="nump">519<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">8,001<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">8,001<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Oct. 31, 2023</a></td>
<td class="nump">$ 613<span></span>
</td>
<td class="nump">502,010<span></span>
</td>
<td class="nump">561,119<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(88,734)<span></span>
</td>
<td class="nump">300,601<span></span>
</td>
<td class="nump">1,275,609<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 );">Balance (in shares) at Oct. 31, 2023</a></td>
<td class="nump">61,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">130,688<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">53,160<span></span>
</td>
<td class="nump">183,848<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,415<span></span>
</td>
<td class="nump">6,134<span></span>
</td>
<td class="nump">8,549<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans</a></td>
<td class="nump">$ 6<span></span>
</td>
<td class="num">(1,143)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,137)<span></span>
</td>
</tr>
<tr class="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 );">Shares issued under equity plans (in shares)</a></td>
<td class="nump">639<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">13,890<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">13,890<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Oct. 31, 2024</a></td>
<td class="nump">$ 619<span></span>
</td>
<td class="nump">$ 514,757<span></span>
</td>
<td class="nump">$ 691,807<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (86,319)<span></span>
</td>
<td class="nump">$ 359,895<span></span>
</td>
<td class="nump">$ 1,480,759<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 );">Balance (in shares) at Oct. 31, 2024</a></td>
<td class="nump">61,949<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 noncontrolling interest from subsidiary issuance of equity interests to noncontrolling interest holders.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-23<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(2)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482739/220-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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 equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary 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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-24<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-23<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-5<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 34: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-3<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 39: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 43: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 44: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 45: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 46: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-15<br><br>Reference 47: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-16<br><br>Reference 48: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4I<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_TreasuryStockRetiredCostMethodAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 of par value, additional paid in capital (APIC) and retained earnings of common and preferred stock retired from treasury when treasury stock is accounted for under the cost 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockRetiredCostMethodAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockSharesRetired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and preferred stock retired from treasury during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesRetired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>23
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343184715680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 183,848<span></span>
</td>
<td class="nump">$ 199,634<span></span>
</td>
<td class="nump">$ 179,242<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization of property, plant and equipment</a></td>
<td class="nump">82,433<span></span>
</td>
<td class="nump">80,473<span></span>
</td>
<td class="nump">79,971<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">372<span></span>
</td>
<td class="nump">362<span></span>
</td>
<td class="nump">359<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation</a></td>
<td class="nump">13,890<span></span>
</td>
<td class="nump">8,001<span></span>
</td>
<td class="nump">6,308<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="num">(1,389)<span></span>
</td>
<td class="num">(927)<span></span>
</td>
<td class="nump">809<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in assets, liabilities, and other:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(2,541)<span></span>
</td>
<td class="nump">4,026<span></span>
</td>
<td class="num">(51,233)<span></span>
</td>
</tr>
<tr class="ro">
<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">(6,154)<span></span>
</td>
<td class="nump">1,236<span></span>
</td>
<td class="num">(2,039)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherCurrentAssets', window );">Other current assets</a></td>
<td class="nump">628<span></span>
</td>
<td class="nump">9,665<span></span>
</td>
<td class="nump">1,204<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities', window );">Accounts payable, accrued liabilities and other</a></td>
<td class="num">(9,643)<span></span>
</td>
<td class="num">(294)<span></span>
</td>
<td class="nump">60,566<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">261,444<span></span>
</td>
<td class="nump">302,176<span></span>
</td>
<td class="nump">275,187<span></span>
</td>
</tr>
<tr class="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 used in investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant and equipment</a></td>
<td class="num">(130,942)<span></span>
</td>
<td class="num">(131,295)<span></span>
</td>
<td class="num">(112,338)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireShortTermInvestments', window );">Purchases of short-term investments</a></td>
<td class="num">(100,558)<span></span>
</td>
<td class="num">(20,192)<span></span>
</td>
<td class="num">(38,854)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments', window );">Proceeds from maturities of short-term investments</a></td>
<td class="nump">72,836<span></span>
</td>
<td class="nump">47,537<span></span>
</td>
<td class="nump">0<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_plab_ProceedsFromGovernmentIncentives', window );">Government incentives</a></td>
<td class="nump">2,229<span></span>
</td>
<td class="nump">2,522<span></span>
</td>
<td class="nump">3,615<span></span>
</td>
</tr>
<tr class="re">
<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 );">Purchases of intangible assets</a></td>
<td class="num">(89)<span></span>
</td>
<td class="num">(117)<span></span>
</td>
<td class="num">(205)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities', window );">Other</a></td>
<td class="nump">59<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">25<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">(156,465)<span></span>
</td>
<td class="num">(101,545)<span></span>
</td>
<td class="num">(147,757)<span></span>
</td>
</tr>
<tr class="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 used in financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations', window );">Repayments of debt</a></td>
<td class="num">(6,621)<span></span>
</td>
<td class="num">(18,439)<span></span>
</td>
<td class="num">(65,440)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Purchases of treasury stock</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,522)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromMinorityShareholders', window );">Contributions from noncontrolling interests</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">24,995<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions', window );">Proceeds from share-based arrangements</a></td>
<td class="nump">1,916<span></span>
</td>
<td class="nump">1,248<span></span>
</td>
<td class="nump">5,749<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_plab_NetSettlementsOfRestrictedStockAwards', window );">Net settlements of restricted stock awards</a></td>
<td class="num">(3,025)<span></span>
</td>
<td class="num">(1,302)<span></span>
</td>
<td class="num">(1,471)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(7,730)<span></span>
</td>
<td class="num">(18,493)<span></span>
</td>
<td class="num">(38,689)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effects of exchange rate changes on cash, cash equivalents, and restricted cash</a></td>
<td class="nump">2,127<span></span>
</td>
<td class="num">(2,680)<span></span>
</td>
<td class="num">(46,012)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase in cash, cash equivalents, and restricted cash</a></td>
<td class="nump">99,376<span></span>
</td>
<td class="nump">179,458<span></span>
</td>
<td class="nump">42,729<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents, and restricted cash at beginning of year</a></td>
<td class="nump">501,867<span></span>
</td>
<td class="nump">322,409<span></span>
</td>
<td class="nump">279,680<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents, and restricted cash at end of year</a></td>
<td class="nump">601,243<span></span>
</td>
<td class="nump">501,867<span></span>
</td>
<td class="nump">322,409<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Less: Ending restricted cash</a></td>
<td class="nump">2,758<span></span>
</td>
<td class="nump">2,575<span></span>
</td>
<td class="nump">2,729<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of year</a></td>
<td class="nump">598,485<span></span>
</td>
<td class="nump">499,292<span></span>
</td>
<td class="nump">319,680<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of non-cash information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid', window );">Accruals for property, plant and equipment not yet paid</a></td>
<td class="nump">5,217<span></span>
</td>
<td class="nump">18,607<span></span>
</td>
<td class="nump">3,266<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_plab_ExpectedRefundableFederalInvestmentTaxCredit', window );">Expected refundable federal investment tax credit</a></td>
<td class="nump">$ 5,013<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ExpectedRefundableFederalInvestmentTaxCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Future cash inflow expected from refundable federal investment tax credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ExpectedRefundableFederalInvestmentTaxCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_plab_NetSettlementsOfRestrictedStockAwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 the net settlement of restricted stock awards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_NetSettlementsOfRestrictedStockAwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_plab_ProceedsFromGovernmentIncentives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 government incentives during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ProceedsFromGovernmentIncentives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Future cash outflow to pay for purchases of fixed assets that have occurred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 obligations incurred but not paid, and operating obligations classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherCurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 current 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/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherCurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 securities or other assets acquired, which qualify for treatment as an investing activity and are to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromMinorityShareholders">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from a noncontrolling interest. Includes, but is not limited to, purchase of additional shares or other increase in noncontrolling interest ownership.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromMinorityShareholders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 short-term and long-term debt and lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 restricted as to withdrawal or usage. 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291409840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text">
<div><span style="font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 1 - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Nature of Business and Basis of Presentation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Description of Business</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;Photronics, Inc. (&#8220;Photronics&#8221;, &#8220;the Company&#8221;, &#8220;we&#8221;, &#8220;our&#8221;, or &#8220;us&#8221;) is one of the world&#8217;s leading manufacturers of
        photomasks, which are high-precision photographic quartz or glass plates containing microscopic images of electronic circuits. Photomasks are a key element in the manufacture of ICs and FPDs, and are used as masters to transfer circuit patterns
        onto semiconductor wafers and FPD substrates during the fabrication of integrated circuits, a variety of FPDs and, to a lesser extent, other types of electrical and optical components. The Company currently has eleven manufacturing facilities, located in Taiwan (3),



        China (2), Korea (1), the
        United States (3), and Europe (2).<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;The Company operates as a single operating segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing microscopic images of electronic circuits for use
        in the fabrication of IC&#8217;s and FPDs. In accordance with ASC 280 &#8211; &#8220;<span style="font-style: italic;">Segment Reporting</span>&#8221;, the Company&#8217;s chief operating decision maker has been identified as the Chief Executive Officer, who reviews operating
        results to make decisions about allocating resources and assessing performance for the entire Company. Existing guidance, which is based on a management approach to segment reporting, establishes requirements to report selected segment information
        quarterly and to report annually entity-wide disclosures about products and services, major customers, and the countries in which the entity holds material assets and reports revenue. All material operating units qualify for aggregation under
        &#8220;Segment Reporting&#8221; due to their similar customer base and similarities in: economic characteristics; nature of products and services; and procurement, manufacturing and distribution processes. Since the Company operates in one segment, all
        financial information required by &#8220;Segment Reporting&#8221; can be found in the accompanying notes to consolidated financial statements.</span><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold; font-style: italic; font-size: 10pt;">Basis of Presentation</span><span style="font-size: 10pt;"><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; The consolidated financial statements are prepared in conformity with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;). The accounting policies used to prepare these financial statements are the same as
        those used to prepare the consolidated financial statements in prior years, except as described in these notes or for the adoption of new standards as outlined below.<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;">Principles of Consolidation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">The accompanying consolidated financial statements include the accounts of Photronics, Inc., its
          wholly owned subsidiaries, in which Photronics is considered the primary beneficiary, and the majority-owned subsidiaries which it controls.</span><br/>
        <br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">All intercompany balances and transactions have been eliminated in consolidation.<br/>
        </span><br/>
        &#160;&#160;&#160;&#160;&#160; &#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">Noncontrolling interests in subsidiaries related to Photronics ownership interests of
          less than 100% are reported as Noncontrolling interests in the consolidated balance sheets. The results of noncontrolling ownership
          interests held by Photronics, net of tax, are reported as Net (income) attributable to noncontrolling interests in the consolidated statements of income.</span></span></div>

<div><span style="font-size: 10pt;">
      <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><br/></div>

<div><span style="font-size: 10pt;"> </span>
     </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Estimates and Assumptions</div>

<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The preparation of financial statements in
      conformity with U.S. GAAP requires Photronics to make estimates and assumptions that affect amounts reported in them. The Company&#8217;s estimates are based on historical experience and on various assumptions that are believed to be reasonable, based on
      the facts and circumstances available at the time they are made. Subsequent actual results may differ from such estimates. The Company reviews these estimates periodically and reflect any effects of revisions in the period in which they are
      determined.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
    </div>

<div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Translation of Foreign Currency Financial Statements</span><span style="font-size: 10pt;"><br/>
      </span></div>

<div><span style="font-size: 10pt;"><br/>
        </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Photronics reporting currency is the U.S. dollar. The functional currency of the majority of Photronics foreign subsidiaries is their local currency. As such, amounts included in the consolidated
        statements of income, comprehensive income, cash flows, and changes in equity are translated using average exchange rates during each period. Assets and liabilities are translated at period-end exchange rates and resulting foreign currency
        translation adjustments are recorded in the consolidated balance sheets as a component of Accumulated other comprehensive loss.</span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-weight: bold;">Transactions</span><br/>
      </span></div>

<div><span style="font-size: 10pt;"> </span> <span style="font-size: 10pt;"> </span> <span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
        </span> </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Monetary assets and liabilities denominated in
          currencies other than the functional currency are remeasured into their respective functional currencies at exchange rates in effect at the balance sheet date. The resulting exchange gain or loss is included in Photronics<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#8217;</span> consolidated statements of income as Foreign <span style="font-size: 10pt; font-family: 'Times New Roman';">currency transactions impacts,</span><span style="font-family: 'Times New Roman';"> net</span>.</span><span style="font-size: 10pt;"><br/>
        </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal;"> <br/>
      </span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Cash and Cash Equivalents</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Cash and cash equivalents include cash and highly liquid investments with an original
        maturity of three months or less, readily convertible to known amounts of cash, and so near to their maturity that they present insignificant risk of changes in value because of changes in interest rates. Restricted cash is included with cash and
        cash equivalents when reconciling the beginning-of-period and end-of-period total amounts shown on the consolidated statements of cash flows. The carrying values of cash equivalents approximate their fair values, due to the short-term maturities of
        these instruments.</span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"> <br/>
      </span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> Restricted Cash</span></span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> <br/>
        </span></span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Restricted cash in the amounts of $2.8 million and $2.6 million are included in Other assets on the
        Company&#8217;s October 31, 2024 and October 31, 2023, consolidated balance sheets, respectively. The restrictions on these amounts are primarily related to land lease agreements and customs requirements.<br/>
      </span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Investments</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: bold; text-align: left; text-indent: 0px; text-transform: none;"><br/>
          </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-size: 10pt;">The Company invests in various bank time deposits, money markets and U.S. Government Securities. </span><span style="font-size: 10pt;">The Company&#8217;s&#160;<span style="color: rgb(0, 0, 0);">classification





















                of investments is as follows:</span></span></div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0);"> <br/>
            </span></div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td colspan="1" style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">Maturing within three months or less from the date of purchase </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Cash and cash equivalents</div>
                    </td>

  </tr>

  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt;">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td colspan="1" rowspan="1" style="width: 60%; vertical-align: top; font-size: 10pt;">
                      <div>Maturing, as of the date of purchase, more than three months, but </div>
                      <div>with remaining maturities of less than one year, from the balance sheet date </div>
                    </td>

    <td rowspan="1" style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right;">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Short-term investments</div>
                    </td>

  </tr>


</table>

<table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td colspan="1" style="width: 5%; vertical-align: top; font-size: 10pt; text-align: center; background-color: rgb(204, 238, 255);">-</td>

    <td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: left; font-family: 'Times New Roman';">Maturing one year or more from the balance sheet date</div>
                    </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Long-term marketable investments</div>
                    </td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;">&#160;&#160;&#160;&#160;</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">As of
            October 31, 2024 and 2023, all of the Company&#8217;s investments from their dates of purchase had remaining maturities of more than three months, but less than one year, and have been classified as short-term investments.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">Based
            upon the Company&#8217;s intent and ability to hold its time deposits to maturity (which maturities range up to twelve months at purchase), such securities have been classified as held-to-maturity and are carried at amortized cost, which approximates
            market value. Money markets are classified as cash and cash equivalents. The Company&#8217;s U.S. Government Securities are classified as available-for-sale. Available-for-sale investments are reported at fair value, with unrealized gains or losses
            (net of tax) reported in Accumulated other comprehensive income (loss). In the event of a sale of these securities, the Company would determine the cost of the investment sold at the specific individual security level and would include any gain
            or loss in&#160;<span style="font-style: italic;">Interest income and other income, net</span>, where the Company also reports periodic interest earned and the amortization (accretion) of discounts (premiums) related to these investments.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"> <br/>
          </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            table below provides information on the Company&#8217;s available-for-sale debt securities and time deposits classified as short-term investments. </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2024</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2023</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"> Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">U.S. Government Securities<sup>(1)</sup></div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Time deposits</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Total</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-size: 10pt;"><br/>
            </span> </div>

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


  <tr style="vertical-align: top;">

    <td style="width: 18pt; font-size: 10pt;">&#160;</td>

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0); text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0);">Matured during 2024</div>
                    </td>

  </tr>


</table>

            </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            Company&#8217;s investments in marketable securities consist primarily of investments in time deposits and U.S. Government Securities. Market values were determined for each individual security in the investment portfolio. When evaluating the
            investments for other-than-temporary impairment, the Company reviews factors such as length of time and extent to which fair value has been below cost basis, the financial condition of the issuer, and the Company&#8217;s ability and intent to hold
            the investment for a period of time, which may be sufficient for anticipated recovery in market values.</div>

<div><br/></div>

<div><span style="font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-size: 10pt;">Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">&#160;We generally record the Company&#8217;s accounts receivable at their billed amounts. The
        Company recognizes unbilled receivables when the Company has satisfied its performance obligations, has an unconditional right to consideration, but has not yet issued an invoice.&#160; All outstanding past due customer invoices are reviewed for
        collectability during, and at the end of, every reporting period. To the extent that the Company believes a loss on the collection of a customer invoice is probable, the Company records the loss and credits an allowance for credit losses. In the
        event that an amount is determined to be uncollectible, the Company charges the allowance for credit losses and derecognizes the related receivable. Refer to the Company&#8217;s revenue recognition policy, below, for additional information on the
        Company&#8217;s accounting for accounts receivable.</span></div>

<div><span style="font-size: 10pt;">  </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Inventories</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-size: 10pt;">&#160;Inventories are stated at the lower
        of cost, determined under the first-in, first-out (&#8220;FIFO&#8221;) method, or net realizable value. Please refer to Note 4 for additional information on the Company&#8217;s inventories. Inventory reserves are established when conditions indicate that the net
        realizable value is less than costs due to assigned expiration dates or other causes based on individual facts and circumstances. If net realizable value is less than cost at the balance sheet date, the carrying amount is reduced to the realizable
        value, and the difference is recognized as a loss on valuation of inventories within cost of sales.<br/>
      </span> </div>

<div><span style="font-size: 10pt;">
      <span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Property, Plant and Equipment, Net<br/>
    </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Property, plant and equipment, except as explained below under &#8220;Impairment of Long-Lived Assets,&#8221; is stated at cost less
      accumulated depreciation and amortization. Repairs and maintenance, as well as renewals and replacements of a routine nature, are charged to operations as incurred, while those that improve or extend the lives of existing assets are capitalized. Upon
      sale or other disposition, the cost of the asset and its related accumulated depreciation are removed from the accounts, and any resulting gain or loss is reflected in earnings.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization, essentially all of which are included in <span style="font-style: italic;">Cost of goods sold</span>
      in the Company&#8217;s consolidated statements of income, are computed using the straight-line method over the estimated useful lives of the related assets. Buildings and improvements are depreciated over&#160;10 to&#160;39 years, machinery and equipment over&#160;5 to&#160;15 years, and furniture, fixtures, and
      office equipment over&#160;3 to&#160;5
      years. Leasehold improvements are amortized over the lesser of the life of the lease or the estimated useful life of the improvement. The Company employs judgment when making assumptions about the estimated useful lives and depreciation periods the
      Company assigns to property, plant and equipment, and when events or changes in circumstances such as a significant industry downturn, plant closures, technological obsolescence, or other occurrences indicate that their carrying amounts may not be
      recoverable.</div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Impairment of Long-Lived Assets</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such
      assets may not be recoverable. Determinations of recoverability are based upon the Company&#8217;s judgment and estimates of undiscounted future cash flows resulting from the use of the assets and their eventual disposition. Measurement of an impairment
      loss for long-lived assets that the Company expects to hold and use is based on the fair value of the assets, determined using a market or income approach, compared with the carrying value of the asset. The carrying values of assets determined to be
      impaired would be reduced to their estimated fair values.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">Property, plant and equipment and other long-lived assets to be sold or otherwise disposed of are
        reported at the lower of carrying amount or fair value less cost to sell.<br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Treasury Stock</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The Company records treasury stock purchases under the cost method,
      recording the entire cost of the acquired stock as treasury stock. Gains and losses on subsequent reissuances would be credited or charged to additional paid-in capital, and the Company would employ the average cost method (with average cost being
      determined separately for each share repurchase program), in the event that the Company subsequently reissues shares. When the Company retires the Company&#8217;s treasury stock, any excess of the repurchase price paid over par value is allocated between
      additional paid-in capital and retained earnings.</div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Revenue Recognition</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;The Company recognizes revenue when, or as, control of a good or service transfers to a customer, in
        an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those goods or services. The Company accounts for an arrangement as a revenue contract when each party has approved and is committed
        to perform under the contract, the rights of the contracting parties regarding the goods or services to be transferred and the payment terms are identifiable, the arrangement has commercial substance, and collection of consideration is probable.
        Substantially all of the Company&#8217;s revenue comes from the sales of photomasks. The Company typically contracts with the Company&#8217;s customers to sell sets of photomasks, which are comprised of multiple layers, the predominance of which the Company
        invoices as they ship to customers. As the photomasks are manufactured to customer specifications, they have no alternative use to the Company and, as the Company&#8217;s contracts generally provide the Company with the right to payment for work
        completed to date, the Company recognizes revenue as the Company performs, or &#8220;over time,&#8221; on most of the Company&#8217;s contracts. The Company measures the Company&#8217;s performance to date using an input method, which is based on the Company&#8217;s estimated
        costs to complete the various manufacturing phases of a photomask. At the end of a reporting period, there are a number of uncompleted revenue contracts on which the Company has performed; for any such contracts under which the Company is entitled
        to be compensated for the Company&#8217;s costs incurred plus a reasonable profit, the Company recognizes revenue and a corresponding contract asset for such performance. The Company accounts for shipping and handling activities that the Company performs
        after a customer obtains control of a good as being activities to fulfill the Company&#8217;s promise to transfer the good to the customer, rather than as promised services, or performance obligations, under the contract. The Company reports the
        Company&#8217;s revenue net of any sales or similar taxes the Company collects on behalf of governmental entities.<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">As stated above, photomasks are manufactured to customer specifications in accordance with their proprietary designs; thus, they are
      individually unique. Due to their uniqueness and other factors, their transaction prices are individually established through negotiations with customers; consequently, the Company&#8217;s photomasks do not have standard or &#8220;list&#8221; prices. The transaction
      prices of the vast majority of the Company&#8217;s revenue contracts include only fixed amounts of consideration. In certain instances, such as when the Company offers a customer an early payment discount, an estimate of variable consideration would be
      included in the transaction price, but only to the extent that a significant reversal of revenue would not occur when the uncertainty related to the variability was resolved.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"><span style="font-size: 10pt;">Contract Assets and Contract Liabilities<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company recognizes a contract asset when the Company&#8217;s performance under a contract precedes the Company&#8217;s receipt of
      consideration from a customer, or before payment is due, and the Company&#8217;s receipt of consideration is conditional upon factors other than the passage of time. Contract assets reflect the Company&#8217;s transfer of control to customers of photomasks that
      are in process or completed but not yet shipped to customers. A receivable is recognized when the Company has an unconditional right to payment for the Company&#8217;s performance, which generally occurs when the Company ships the photomasks. The Company&#8217;s
      contract assets primarily consist of a significant amount of the Company&#8217;s in-process production orders and fully manufactured photomasks which have not yet shipped, for which the Company has an enforceable right to collect consideration (including a
      reasonable profit) in the event the in-process orders are cancelled by customers. On an individual contract basis, the Company nets contract assets with contract liabilities (deferred revenue) for financial reporting purposes. The Company&#8217;s net
      credit losses on the accounts receivable during 2024 were insignificant. The Company did not impair any contract assets or accounts
      receivable in 2024 or 2023.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Contract Costs</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company pays commissions to third-party sales agents for certain sales that they procure on the Company&#8217;s behalf. However, the
      bases of the commissions are the transaction prices of the sales, which are completed in less than one year; thus, no relationship is established with a customer that will result in future business. Therefore, the Company would not recognize any
      portion of these sales commissions as costs of obtaining a contract, nor does the Company currently foresee other circumstances under which the Company would recognize such assets.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-family: 'Times New Roman'; font-weight: bold; font-style: italic;">Remaining Performance Obligations</span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;As the Company is typically required to fulfill customer orders within a short time period, the
        Company&#8217;s backlog of orders is generally not in excess of <span style="-sec-ix-hidden:Fact_5703f7f4215845d39c53f0c87db95a93">one</span> to <span style="-sec-ix-hidden:Fact_6a757c41eb204cc49bd749b3122d8f51">two</span> weeks for IC photomasks and <span style="-sec-ix-hidden:Fact_0b61858f2adb4362aa480cffdbcf8a66">two</span> to <span style="-sec-ix-hidden:Fact_fd0da33cff84449793d061ed13c41db6">three</span> weeks for FPD photomasks. However, the demand for some IC photomasks can extend beyond the traditional time period; thus the backlog, in some
        individual cases, can extend to as long as <span style="-sec-ix-hidden:Fact_9a2dc09c502043edb6ecdcfd73ea6e78">two</span> to three months. More recently however, backlogs for most high demand products have returned to historical levels of less than a month. As allowed under ASC 606 &#8211; <span style="font-style: italic;">Revenue Contracts
          with Customers,</span> the Company has elected not to disclose the Company&#8217;s remaining performance obligations, which represent the costs associated with the completion of the manufacturing process of in-process photomasks related to contracts
        that have an original duration of one year or less.<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Product Warranties</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company&#8217;s photomasks are sold under warranties that generally range from <span style="-sec-ix-hidden:Fact_8a2b9076b8e94965b895c6c0a1257b9a">one</span> to twenty-four months. The Company warrants that the Company&#8217;s
      photomasks conform to customer specifications, and the Company will typically repair, replace, or issue a refund for any photomasks that fail to do so. The warranties do not represent separate performance obligations in the Company&#8217;s revenue
      contracts. Historically, customer claims under warranties have been immaterial.</div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
        </span> </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">&#160;&#160;&#160; The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the
          Company commits to entering the agreement and evaluates at that time whether the lease is an operating lease or a finance lease. The Company recognizes right-of-use assets and lease liabilities for operating and finance leases with terms greater
          than 12 months. Please refer to Note 11 &#8211; <span style="font-style: italic;">Leases</span> for additional information.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; The Company&#8217;s involvement in lease arrangements has typically been as a lessee. The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the Company commits to
          entering the agreement. An arrangement is determined to be a lease when it conveys to the Company the right to control the use of an identified asset for a period of time in exchange for consideration. The Company&#8217;s having the right to control an
          identified asset is determined by whether the Company is entitled to substantially all of its economic benefits and can direct its use. The Company recognizes leases on the Company&#8217;s consolidated balance sheet when a lessor makes an asset
          underlying a lease having a term in excess of twelve months available for the Company&#8217;s use. As allowed under ASC Topic 842 &#8211; &#8220;<span style="font-style: italic;">Leases</span>&#8221; (&#8220;Topic 842&#8221;), the Company has elected 1) not to apply the recognition
          requirements to leases that, at their commencement dates, have lease terms of twelve months or less and do not include options to purchase their underlying assets that the Company is reasonably certain to exercise and 2) for all classes of
          assets, the practical expedient to not separate lease components of a contract from non-lease components of a contract. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"><br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; If an arrangement is determined to be, or includes a lease, the Company then applies the classification criteria in ASC 842 - <span style="font-style: italic;">Leases</span> to determine whether the lease is a finance lease or an
          operating lease. For both types of leases, at their commencement dates (which are the dates on which a lessor makes an underlying asset available for the Company&#8217;s use), the Company recognizes Right-of-Use (&#8220;ROU&#8221;) assets, which represent the
          Company&#8217;s rights to use the underlying assets, and lease liabilities which represent the Company&#8217;s obligation to make payments for such rights. The present value of lease payments over the term of the lease provides the basis for the initial
          measurement of ROU assets and their related lease liabilities. Variable lease payments, other than those that are dependent on an index or on a rate (at which they are measured on their commencement dates), are not included in the measurement of
          ROU assets and their related lease liabilities. Lease terms include extension periods if the lease agreement includes an option to extend the lease that the Company is reasonably certain to exercise. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>

<div style="font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; The initial measurement process for finance leases and operating leases is the same, except that, for operating leases, the Company generally applies the
          Company&#8217;s incremental borrowing rates for collateralized borrowings over terms similar to those of the leases to determine the lease liability while, for finance leases, the Company uses the interest rates implicit in the leases. The initial
          measurement of ROU assets may require further adjustments for lease prepayments and initial direct costs the Company incurs. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; Operating leases are expensed on a straight-line basis over the terms of the leases, and are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold, Selling, general and administrative</span>, or <span style="font-style: italic;">Research and development</span> expense in accordance with the use of the underlying asset. Finance lease ROU
          assets are amortized over the estimated useful life of the underlying asset; the expenses are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold</span>. Finance lease liabilities are
          subsequently remeasured by increasing the liability to reflect interest accrued during a period and decreasing the liability to reflect payments made during the period. Interest expense incurred on finance leases is included in <span style="font-style: italic;">Interest expense</span> on the consolidated statements of income.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; Cash paid for operating leases and interest paid for finance leases are included in the consolidated statement of cash flows as operating activities in <span style="font-style: italic;">Accounts payable, accrued liabilities and other</span>;
          cash paid for finance lease principal is included in <span style="font-style: italic;">Repayments of debt</span> in the financing activities section of the consolidated statement of cash flows.</span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Share-Based Compensation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;">We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#8217;s common stock&#8217;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.</span></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Research and Development</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Research and development costs are expensed as incurred and consist primarily of development efforts related to high-end process
      technologies for advanced subwavelength reticle solutions for IC and FPD photomask technologies. Research and development expenses were $16.6
      million, $13.7 million, and $18.3
      million for the years ended October 31, 2024, 2023 and 2022, respectively.</div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span>
     </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Government Grants</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">The <span style="font-size: 10pt;">Company receives or expects to receive in the future, various types of
          government assistance, primarily in the form of grants or refundable tax credits.&#160; Government assistance is recognized when there is reasonable assurance that: (1) the Company will comply with the relevant conditions and (2) the assistance will
          be received. Government assistance related to reimbursing fixed asset purchases, such as reimbursement grants and refundable federal investment tax credits, are recorded as a reduction to the related asset(s), which then reduces depreciation
          expense over the expected useful life of the asset on a straight-line basis. If some, or all, of the amount of government assistance becomes repayable (e.g. due to non-fulfillment of the grant conditions) or there is no longer reasonable
          assurance the amount will be received (e.g. due to additional interpretive guidance) then the adjustment is accounted for prospectively as a change in accounting estimate. The effect of the change in estimate is recognized in the period in which
          management concludes that it is no longer reasonably assured that all of the grant conditions will be met. A corresponding financial liability is recognized for the amount of the repayment, if any</span>.</span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">Company accounts for funds the Company receives from government grants by either reducing the costs of the
        assets (if the grant relates to capital expenditures) or expenses which could be </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Cost of goods sold, Selling, general and administrative, or Research and development expenses</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income.&#160; If the funds the Company receives cannot be attributed to specific assets or expenses, they would be recognized as other income, and included in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Interest income and other income, net</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income. Funds the Company receive from government grants are classified in
        the Company&#8217;s consolidated statements of cash flows as either </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash
        provided by operating activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash provided by investing activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">, in accordance with how the Company expends the funds. When a grant is received before conditions of the grant have been met, the
        grant is recorded in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Accrued liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Other liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the Consolidated Balance Sheets.&#160; For the years ended October 31, 2024, October 31, 2023, and October 31, 2022, grants recorded in the Company&#8217;s Consolidated Financial Statements were not material.</span></div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0);">The </span><span style="color: rgb(0, 0, 0);">Company expects to receive refundable
        federal investment tax credits through the CHIPS Act in connection with ongoing expansion projects. As of October 31, 2024, the Company has reduced property, plant and equipment, net by $5.0 million as a result of expected refundable tax credits in connection with the CHIPS Act<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">. The Company has also applied for direct capital grants through the CHIPS Act in connection with proposed projects.<br/>
        </span></span></div>

<div>
     <span style="font-size: 10pt;"> <br/>
    </span> <span style="font-size: 10pt;"> </span> </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Income Taxes</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The income tax provision is computed on the basis of the income or loss before income taxes for each entity in its respective tax
      jurisdiction. Deferred income taxes reflect the tax effects of differences between the carrying amounts of assets and liabilities for financial reporting purposes and their amounts used for income tax purposes, as well as the tax effects of net
      operating losses and tax credit carryforwards. We employ judgment and make assumptions when establishing valuation allowances for deferred income tax assets, if their realization is not deemed to be more likely than not, by considering future market
      growth, operating forecasts, future taxable income, and the mix of earnings among the tax jurisdictions in which we operate. Accordingly, income taxes charged against earnings may have been impacted by changes in the valuation allowances. We are
      eligible for investment tax credits in U.S. and non-U.S. tax jurisdictions. We account for investment tax credits under the &#8220;flow-through&#8221; method of accounting. As permitted in ASC 740 &#8220;Income Taxes&#8221;, under the flow-through method of accounting, the
      tax benefit from an investment tax credit is recorded as a reduction of income taxes in the period in which the credit is generated.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consider income taxes in each of the tax jurisdictions in which we operate in order to determine our effective income tax rate.
      Our current income tax expense is thus identified, and temporary differences resulting from differing treatments of items for tax and financial reporting purposes are assessed. These differences result in deferred tax assets, which are presented on
      our consolidated balance sheets, and deferred tax liabilities, which are included in <span style="font-style: italic;">Other liabilities</span> on our consolidated balance sheets.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;We account for uncertain tax positions by recording a liability for unrecognized tax benefits
        resulting from uncertain tax positions taken, or expected to be taken, in our tax returns. We include any applicable interest and penalties related to uncertain tax positions in the liability and in our income tax provision.<br/>
      </span> </div>

<div>
     <span style="font-size: 10pt;"> </span></div>

<div><br/></div>

<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Earnings Per Share</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;Basic earnings per share (&#8220;EPS&#8221;) attributed to Photronics shareholders for both basic and diluted is
        computed independently for each period presented and is based on the weighted-average number of common shares outstanding for the period, excluding any dilutive common share equivalents. Diluted EPS reflects the potential dilution that could occur
        if certain share-based payment awards were exercised or earned.<br/>
      </span> </div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Variable Interest Entities</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We account for the investments the Company makes in certain legal entities in which equity investors do not have: 1) sufficient
      equity at risk for the legal entity to finance its activities without additional subordinated financial support or, 2) as a group, the holders of the equity investment at risk do not have either the power, through voting or similar rights, to direct
      the activities of the legal entity that most significantly impact the entity&#8217;s economic performance or, 3) the obligation to absorb the expected losses of the legal entity or the right to receive expected residual returns of the legal entity as
      &#8220;variable interest entities&#8221;, or &#8220;VIEs&#8221;.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consolidate the results of any such entity in which the Company has determined that the Company has a controlling financial
      interest. The Company would have a &#8220;controlling financial interest&#8221; (and thus be considered the &#8220;primary beneficiary&#8221; of the entity) in such an entity when the Company has both the power to direct the activities that most significantly affect the
      VIE&#8217;s economic performance and the obligation to absorb the losses of, or right to receive the benefits from, the VIE that could be potentially significant to the VIE. On a quarterly basis, the Company reassesses whether the Company has a controlling
      financial interest in any investments the Company has in these entities.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We would account for investments the Company makes in VIEs in which the Company has determined that the Company does not have a
      controlling financial interest but have a significant influence over, and hold at least a twenty percent ownership interest in, using the
      equity method. An investment not meeting the parameters to be accounted for under the equity method would be accounted for using the cost method, unless the investment had a readily determinable fair value, at which value it would then be reported.</div>

<div><span style="font-size: 10pt;">
    </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="font-size: 10pt; text-indent: 18pt;"><span style="font-weight: bold; font-style: italic;">&#160; <span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; font-weight: bold; font-size: 10pt;">Recent Accounting Pronouncements</span><br/>
        </span></span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">&#160; In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to
          Income Tax Disclosures&#8221;, to enhance the transparency and decision usefulness of income tax disclosures. The amendments in this Update related to the rate reconciliation and income taxes paid disclosures to improve the transparency of income tax
          disclosures by requiring (1) consistent categories and greater disaggregation of information in the rate reconciliation and (2) income taxes paid disaggregated by jurisdiction. The amendments allow investors to better assess, in their capital
          allocation decisions, how an entity&#8217;s worldwide operations and related tax risks and tax planning and operational opportunities affect its income tax rate and prospects for future cash flows. The guidance in this Update will be effective for
          Photronics in its fiscal year 2026 Form 10-K, with early application of the amendments allowed. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"> In November 2023, the FASB issued ASU 2023-07, &#8220;Segment Reporting (Topic 280): Improvements
          to Reportable Segment Disclosures&#8221;, which improves reportable segment disclosure requirements, primarily through enhanced disclosures about significant segment expenses. The guidance in this Update is effective for Photronics in its fiscal year
          2025 Form 10-K, with early adoption permitted. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185699168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCOUNTS RECEIVABLE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccountsReceivableNetCurrentAbstract', window );"><strong>ACCOUNTS RECEIVABLE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock', window );">ACCOUNTS RECEIVABLE</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;">NOTE 2 &#8211; ACCOUNTS RECEIVABLE</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">The

















































          components of&#160;</span><span style="font-style: italic; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">Accounts Receivable&#160;</span><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">at the
          balance sheet dates are presented below.</span></div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"> October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Accounts Receivable</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">172,741</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">171,433</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Unbilled Receivable</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">29,215</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">24,593</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Allowance for Credit Losses</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">(1,126</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">(1,099</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-family: 'Times New Roman'; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">200,830</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">194,927</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountsReceivableNetCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/310-10/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186183840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>OTHER CURRENT ASSETS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_PrepaidExpenseAndOtherAssetsCurrentAbstract', window );"><strong>OTHER CURRENT ASSETS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherCurrentAssetsTextBlock', window );">OTHER CURRENT ASSETS</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 3 - OTHER CURRENT ASSETS</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other current assets</span> at
      the balance sheet dates.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Contract assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">11,532</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,984</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid expenses</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,770</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,031</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Recoverable value added taxes</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,684</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid and refundable income taxes</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,875</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,489</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other<sup> (1)</sup><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">11,175</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,537</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">33,036</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">28,353</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

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


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000; text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
            </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000;">The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#8217;s ongoing expansion projects.</div>
            </td>

  </tr>


</table>

      <div> <br/>
      </div>

    </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherCurrentAssetsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other current assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherCurrentAssetsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_PrepaidExpenseAndOtherAssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PrepaidExpenseAndOtherAssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343297858416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVENTORIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>INVENTORIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">INVENTORIES</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 4 - INVENTORIES</div>

<div><br/>
        </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The components of&#160;<span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Inventories&#160;</span>at the balance sheet dates are presented below.</div>

<div><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">56,128</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">48,948</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Work in process</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">398</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,010</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">56,527</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">49,963</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291437936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT AND EQUIPMENT, NET<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>PROPERTY, PLANT, AND EQUIPMENT, NET [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">PROPERTY, PLANT AND EQUIPMENT, NET</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 5 - PROPERTY, PLANT AND EQUIPMENT, NET</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-style: italic;">Property, plant and equipment, net</span> at the balance
      sheet dates.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Land</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,419</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,378</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Buildings and improvements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">188,756</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">185,850</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,990,610</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,922,041</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Leasehold improvements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">19,268</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,894</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Furniture, fixtures, and office equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,091</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">15,856</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Construction in progress</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">91,213</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">55,434</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,319,357</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,209,453</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accumulated depreciation and amortization</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,574,100</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,500,209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">745,257</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">709,244</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Information on ROU assets resulting from finance leases, at the balance sheet dates, is presented below.</div>

<div><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">42,815</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">42,820</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Accumulated amortization</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(10,522</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(7,655</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">35,165</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following table presents depreciation expense (including the amortization of ROU assets) related to property, plant and
          equipment incurred during the reporting periods.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;">


  <tr>

    <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"><br/>
                </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center;"><span style="font-weight: bold;">2024</span></div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2023</div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2022</div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
                  <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization expense</div>
                </td>

    <td colspan="1" style="font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">82,433</td>

    <td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">$</span></td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">80,472</span></td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">$</span></td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">79,971</span></td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
          </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/360/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291409344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PDMCX JOINT VENTURE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>PDMCX JOINT VENTURE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityDisclosureTextBlock', window );">PDMCX JOINT VENTURE</a></td>
<td class="text">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 6 - PDMCX JOINT VENTURE</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">In January 2018, Photronics<span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">,</span> Inc., through its wholly owned<span style="color: rgb(0, 0, 0);"> Photronics</span> Singapore PTE. LTD. subsidiary
        (hereinafter, within this Note &#8220;we&#8221;, &#8220;Photronics&#8221;, <span style="color: rgb(0, 0, 0);">&#8220;</span>us<span style="color: rgb(0, 0, 0);">&#8221;,</span> or &#8220;our&#8221;), and DNP, through its wholly owned subsidiary &#8220;DNP Asia Pacific PTE, Ltd.&#8221;, entered into a joint
        venture under which DNP obtained a </span><span style="font-family: 'Times New Roman'; font-size: 10pt;">49.99%<span style="color: rgb(0, 0, 0);"> interest in the<span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> Company&#8217;s</span> IC business in Xiamen, China. </span>The
        joint venture, which the Company refers to as &#8220;PDMCX&#8221;, was established to develop and manufacture photomasks for semiconductors. The Company entered into this joint venture to enable the Company to compete more effectively for the merchant
        photomask business in China, and to benefit from the additional resources and investment that DNP provides to enable the Company to offer advanced-process technology to our customers<span style="color: rgb(0, 0, 0);">.</span></span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">In 2020, in combination with local financing obtained by PDMCX, Photronics and DNP fulfilled their investment obligations under the PDMCX operating
      agreement (<span style="color: rgb(0, 0, 0);">&#8220;</span>the Agreement<span style="color: rgb(0, 0, 0);">&#8221;</span>). As discussed in Note 8, liens were granted to the local financing entity on property, plant, and equipment and were paid off during
      fiscal year 2023 and there was no remaining debt at October 31, 2023.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Under the Agreement, should either <span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">Photronics&#8217; or DNP&#8217;s</span> ownership interest fall below 20.0%
      for a period of more than <span style="-sec-ix-hidden:Fact_549b7473dfe1448fa5a93e38f911cb8c">six</span> consecutive months, such party (an &#8220;exiting party&#8221;) has the option to sell to the other party, and the other
      party has the option to purchase from such exiting party, the exiting party&#8217;s remaining ownership interest. In either case, the sales of ownership interests would be at the exiting party&#8217;s ownership percentage of the joint venture&#8217;s net book value,
      with closing to take place within <span style="-sec-ix-hidden:Fact_19a45af3a76e4d89938605be47b11523">three</span> business days of obtaining required approvals and clearance.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">The following table presents net income the Company recorded from the operations of PDMCX during the reporting periods. </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </span> </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
            </td>

    <td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2022</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 64%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income from PDMCX</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">20,074</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">25,098</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">16,714</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As required by the guidance in ASC Topic 810 - &#8220;<span style="font-style: italic;">Consolidation</span>&#8221;, the Company evaluated&#160; the Company&#8217;s involvement
      in PDMCX for the purpose of determining whether the Company should consolidate its results in the Company&#8217;s financial statements. The initial step of the Company&#8217;s evaluation was to determine whether PDMCX was a VIE. Due to its lack of sufficient
      equity at risk to finance its activities without additional subordinated financial support, the Company determined that it is a VIE. Having made this determination, the Company then assessed whether the Company was the primary beneficiary of the VIE,
      and concluded that the Company was the primary beneficiary during the current and prior years reporting periods; thus, as required, the PDMCX financial results have been consolidated with Photronics. The Company&#8217;s conclusion was based on the fact
      that the Company held a controlling financial interest in PDMCX (which resulted from the Company&#8217;s having the power to direct the activities that most significantly impacted its economic performance) and had both the obligation to absorb losses and
      the right to receive benefits that could potentially be significant to PDMCX. The Company&#8217;s conclusion that the Company had the power to direct the activities that most significantly affected the economic performance of PDMCX during the current and
      prior year periods were based on the Company&#8217;s right to appoint the majority of its Board of Directors, which has, among others, the powers to manage the business (through its rights to appoint and evaluate PDMCX&#8217;s management), incur indebtedness,
      enter into agreements and commitments, and acquire and dispose of PDMCX&#8217;s assets. In addition, as a result of the 50.01% variable interest
      the Company held during the current and prior year periods, the Company had the obligation to absorb losses, and the right to receive benefits, that could potentially be significant to PDMCX.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span>
     <span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The following table presents the carrying amounts of PDMCX assets and liabilities included in the Company&#8217;s consolidated balance sheets. General
      creditors of PDMCX do not have recourse to the assets of Photronics (other than the net assets of PDMCX); therefore, the Company&#8217;s maximum exposure to loss from PDMCX is the Company&#8217;s interest in the carrying amount of the net assets of the joint
      venture.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> <span style="font-size: 10pt;"><br/>
            </span></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; text-indent: -9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">174,059</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">87,047</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">135,960</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">67,994</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">151,039</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">75,535</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136,334</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">68,181</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">325,098</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">162,582</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">272,294</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136,175</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">40,691</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">20,350</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">36,305</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,156</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,320</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,660</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,873</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">937</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">44,011</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,010</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">38,178</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">19,093</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">281,087</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">140,572</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">234,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">117,082</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableInterestEntityDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a variable interest entity (VIE), including but not limited to, judgments and assumptions in determining whether to consolidate and in identifying the primary beneficiary, gain (loss) recognized on the initial consolidation of the VIE, terms of arrangements, amounts and classification of the VIE's assets and liabilities, and the entity's maximum exposure to loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/810/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableInterestEntityDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185707584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCRUED LIABILITIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccruedLiabilitiesCurrentAbstract', window );"><strong>ACCRUED LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock', window );">ACCRUED LIABILITIES</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 7 - ACCRUED LIABILITIES</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt; text-align: left; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Presented



















        below are the components of <span style="font-style: italic;">Accrued liabilities</span> at the balance sheet dates.<br/>
      </div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Compensation related expenses</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">31,188</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">37,218</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income taxes</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">24,200</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">24,080</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Contract liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12,375</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,965</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">Value added and other taxes <br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,837</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">3,523</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant, and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,670</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,624</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Operating leases<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,925</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,912</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Telecommunications and utilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,040</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,311</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Service Contracts<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,448</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,613</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Other<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">9,439</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">7,332</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">87,122</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">94,578</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483384/720-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185654608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>DEBT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">DEBT</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">NOTE 8 - DEBT</div>

<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of October 31, 2024, the Current portion of long-term debt and the Long-term debt balances were comprised of finance leases as described below:<br/>
        </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; width: 85%; white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold;">As of October 31, 2024</span></div>
                </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance</div>
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">25</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;Varies as Lease matures<br/>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom">&#160;Monthly<br/>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><sup>(1)</sup> <br/>
                </td>

  </tr>


</table>
        </div>

<div><br/></div>

<div>
              <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;">&#160;</td>

    <td style="width: 18pt; vertical-align: top; text-align: right;">
                      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
                    </td>

    <td style="width: auto; vertical-align: top;">
                      <div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.</div>
                    </td>

  </tr>


</table>
            </div>

<div><br/>
        </div>

<div style="display:none;"><br/></div>
<div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">The table below provides information on the Company&#8217;s long-term debt as of October 31, 2023.</div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
        <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of October 31, 2023</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">12</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">1</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,998</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">24,619</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">N/A</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">N/A</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">Varies as Lease matures</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom">Monthly</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">35,165</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><sup>(1)</sup> <br/>
              </td>

  </tr>


</table>
      </div>

<div><sup> </sup></div>

<div><br/>
      </div>

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


  <tr style="vertical-align: top;">

    <td style="width: 27pt;">&#160;</td>

    <td style="vertical-align: top; width: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
              </td>

    <td style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Represents the carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.<br/>
                </div>
              </td>

  </tr>


</table>
         </div>

<div><br/>
        </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;">Finance Leases</div>

<div><br/>
        </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;">In February 2021, the Company entered into a five-year $7.2 million finance lease for a high-end inspection tool. Monthly
          payments on the lease, which commenced in February 2021, are $0.1 million per month. Upon the payment of the fiftieth monthly payment
          and prior to payment of the fifty-first monthly payment, the Company may exercise an early buyout option to purchase the tool for $2.4
          million. After the original term or any renewal periods, the Company may return the tool, elect to extend the lease, or purchase the tool at its fair market value. Management has determined that the Company will exercise its early buyout option
          during the first half of 2025.</div>

<div><br/>
        </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In
            December 2020, the Company entered into <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">a five-year $35.5
              million</span> finance lease for a high-end lithography tool. Monthly payments on the lease, which commenced in January 2021, increased from $0.04
            million during the first three months to $0.6 million for the following nine months, followed by forty-eight monthly payments of $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">0.5</span> million. As of the due date of the forty-eighth monthly payment, the Company may exercise an early buyout option to purchase the tool for $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">14.1</span> million.&#160; At the Company&#8217;s option, after the original term, the Company may return the tool, elect to extend the lease term for a period and a lease payment
            to be agreed with lessor at the time, or purchase the tool for its then-fair market value, as determined by the lessor. The lease agreement incorporates the covenants included in the Company&#8217;s Credit Agreement, as defined below (expired in
            September 2023), which are detailed below, and includes a cross-default provision for any agreement or instrument with an outstanding, committed balance greater than $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">5.0</span>
            million in which the Company is the indebted party. Management has determined that the Company will exercise its early buyout option during the first half of 2025. </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
          </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-indent: -9pt; margin-left: 9pt; font-variant: normal; text-transform: none;">Xiamen Project Loans</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
        </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;">In November 2018, PDMCX obtained approval to borrow RMB 345.0 million from the Industrial and Commercial Bank of China. From November 2018 through July 2020, PDMCX entered into separate loan agreements (the &#8220;Project Loans&#8221;) for the
        entire approved amount. In February 2023, PDMCX repaid the entire outstanding balance of RMB 26.4 million ($3.9 million).&#160; As of October 31, 2024, PDMCX had no
        amount outstanding and the amounts may not be re-borrowed. The Project Loans were used to finance certain capital expenditures at the PDMCX facility and were collateralized by liens granted on the land use right, building, and certain equipment
        located at the facility. The interest rates on the Project Loans were variable (based on the RMB Loan Prime Rate of the National Interbank Funding Center), and interest incurred on the loans was eligible for reimbursement through incentives
        provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and duration. The Project Loans were subject to covenants and provisions, certain of which related to the assets
        pledged as security for the loans, all of which the Company were in compliance with at the time of repayment.</div>

<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"> <br/>
      </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span>
       <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> <span style="font-style: italic; font-weight: bold;">Xiamen Working Capital Loans</span> </span></div>

<div> <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
        </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;">In November 2018, PDMCX obtained approval for revolving, unsecured credit of RMB 200 million ($25 million), pursuant to which PDMCX may enter into
        separate loan agreements with varying terms to maturity. In December 2022, the Company repaid the Company&#8217;s entire outstanding balance of RMB 25.6
        million ($3.6 million). The interest rates are variable, based on the RMB Loan Prime Rate of the National Interbank Funding Center.
        Interest incurred on the loans related to the amount borrowed was eligible for reimbursement through incentives provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and
        duration. This facility is subject to annual reviews and extensions. In August 2024, the Company was issued an extension to the revolving, unsecured credit agreement for RMB&#160;200 million (approximately $28.1 million) with an expiration date
        of July 31, 2025. As of October 31, 2024, PDMCX had no outstanding borrowings against the approval.</div>

<div><br/></div>

<div style="display:none;"><br/></div>
<div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"> Corporate Credit Agreement</div>

<div style="display:none;"><br/></div>
<div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"> <br/>
        </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">In September 2018, the
            Company entered into a <span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">five-year</span></span> amended and restated credit agreement (the &#8220;Credit Agreement&#8221;), which had a $<span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">50</span>
            million borrowing limit, with an expansion capacity to $<span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">100</span> million. The Credit Agreement was secured by substantially all of the Company&#8217;s assets located in the United
            States and common stock the Company owns in certain subsidiaries. The Credit Agreement was subject to covenants around minimum interest coverage ratio, total leverage ratio, and minimum unrestricted cash balance (all of which the Company were
            in compliance with at the termination of the agreement in September 2023), and limited the amount of cash dividends, distributions, and redemptions the Company could pay on the Company&#8217;s common stock to an aggregate annual amount of $50 million. The Credit Agreement expired and was not renewed as of October 31, 2023. There were <span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">no</span></span></span> outstanding borrowings against the
            Credit Agreement at its expiration.</span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"> <br/>
          </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span>
       <span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> </span> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-weight: bold; font-style: italic;">Interest Paid for Debt</span></span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Interest payments were $0.3 million in 2024, $0.5 million in
        2023, and $2.8 million in 2022.&#160;&#160; The weighted-average interest rate on the Company&#8217;s current portion of long-term debt for the periods
        ended October 31, 2024 and October 31, 2023 was 1.5% and 1.5%, respectively.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/470/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343303008208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>OTHER LIABILITIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_OtherLiabilitiesDisclosureAbstract', window );"><strong>OTHER LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesDisclosureTextBlock', window );">OTHER LIABILITIES</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 9 - OTHER LIABILITIES</div>

<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other liabilities</span> at
        the balance sheet dates.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
        <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2023</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Unrecognized tax benefit</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">14,720</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">8,908</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Post employment benefit</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">12,993</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">11,994</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Contract liabilities</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">8,910</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">12,454</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Tax payable</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4,310</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">6,622</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Operating lease</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,037</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4,218</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,494</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,195</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other liabilities</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">47,464</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">47,391</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
      </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherLiabilitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291340464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVENUE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>REVENUE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">REVENUE</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 10 - REVENUE</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present the Company&#8217;s revenue for the years ended October 31, 2024, October 31, 2023, and October 31, 2022,
      disaggregated by product type, geographic origin, and timing of recognition.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Product Type</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: bottom; white-space: nowrap; text-align: center;">
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> October 31, </span></div>
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">IC</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">228,469</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">194,939</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">195,332</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">409,682</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">456,340</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">397,694</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total IC</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">638,151</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">651,279</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">593,026</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">FPD</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">195,365</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">200,842</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">186,988</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">33,430</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39,955</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">44,535</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total FPD</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">228,795</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">240,797</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">231,523</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">Year Ended</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Geographic Origin*</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;October 31, </div>
            <div>2024</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;October 31, </div>
            <div>2023</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: center; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">288,275</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">316,889</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">291,342</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom">China<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">232,941</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">245,378</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">212,598</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">158,017</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">162,235</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">156,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">146,652</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">128,879</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">126,205</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Europe</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39,244</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">36,579</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">36,402</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,817</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">1,863</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 30px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">* This table disaggregates revenue by the location in which it was earned.</span> </div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">Year Ended &#160;&#160; <br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Timing of Recognition</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2024</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2023</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Over time</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">831,500</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">838,628</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">758,359</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">At a point in time</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">35,446</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">53,448</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">66,190</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>&#160;</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>&#160;</div>
          </td>

  </tr>


</table>

<div> <br/>
    </div>

<div><span style="font-weight: bold; font-style: italic; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">Contract Assets and Contract Liabilities</span><br/>
    </div>

<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-family: 'Times New Roman';"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The




            following table provides information about the Company&#8217;s contract balances at the balance sheet dates.</span></span> </div>

<div><span style="font-family: 'Times New Roman';">&#160;</span></div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
              <div style="font-weight: bold; font-family: 'Times New Roman';">Classification</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, <br/>
                2024</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Assets</span></div>
            </td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other current assets</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">11,532</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">10,984</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Liabilities</span></div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Accrued liabilities</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,375</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">9,965</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other liabilities</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">8,910</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,454</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">21,285</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">22,419</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-family: 'Times New Roman';">&#160;</span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents revenue recognized
          from contract liabilities that existed at the beginning of the reporting periods. </span><span style="font-family: 'Times New Roman';">&#160;</span> </div>

<div> <span style="font-family: 'Times New Roman';"><br/>
        </span> </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2022</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Revenue recognized from beginning liability</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,222</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">13,966</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">8,934</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-weight: normal; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">The Company&#8217;s invoice terms generally
        range from net <span style="-sec-ix-hidden:Fact_599542974f764e109fc11a4ac9750c4f">thirty</span> to ninety days,
        depending on both the geographic market in which the transaction occurs and the Company&#8217;s payment agreements with specific customers. In the event that the Company&#8217;s evaluation of a customer&#8217;s business prospects and financial condition indicate
        that the customer presents a collectability risk, the Company will modify terms of sale, which may require payment in advance of performance. At the time of adoption, the Company elected the practical expedient allowed under ASC Topic 606 &#8220;Revenue
        from Contracts with Customers&#8221; (&#8220;Topic 606&#8221;) that permits the Company not to adjust a contract&#8217;s promised amount of consideration to reflect a financing component when the period between when the Company transfers control of goods or services to
        customers and when the Company is paid is one year or less.</div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span> </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">In
          instances when the Company is paid in advance of the Company&#8217;s performance, the Company records a contract liability and, as allowed under the practical expedient in Topic 606, recognize interest expense only if the period between when the
          Company receives payment from the customer and the date when the Company expects to be entitled to the payment is greater than one year. Historically, advance payments the Company has received from customers have generally not preceded the
          completion of the Company&#8217;s performance obligations by more than one year. </span> </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>34
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291455536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>LEASES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">LEASES</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;">NOTE 11 - LEASES</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table provides information on operating and finance leases included in the Company&#8217;s consolidated balance sheets.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Operating Leases</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_e8e8c545bc864b06b0577fcd644ac09b"><span style="-sec-ix-hidden:Fact_b4cb7129b71940b6b50393ee53e87598">Other assets</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,010</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,189</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Finance Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_8706baf0b4a0466d9ef2b89f59b7270e"><span style="-sec-ix-hidden:Fact_765cd50c756e45d59be9c0bd312deb00">Property, plant and equipment, net</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">35,165</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Operating Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bac605cca03d4db9b005c1c5e38ebb4e"><span style="-sec-ix-hidden:Fact_4662dc911fd242c59f78644e7c671198">Accrued liabilities</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,925</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,912</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_f2e4447e1ddf477e8d84073b9710c2d9"><span style="-sec-ix-hidden:Fact_a0cf7b23a5be4102aba701801191947a">Other liabilities</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,037</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,218</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,962</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,130</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Finance Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bcdd19554cb14a1b8addbc63acc37d1c"><span style="-sec-ix-hidden:Fact_02bcc5c17bc34ac88d993f4748f0176e">Current portion of long-term debt</span></span><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_fc386990839946f5980f8174f7d08fe1"><span style="-sec-ix-hidden:Fact_b0c8a6aa29b74344a7a394c915c7fd4d">Long-term debt</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">25</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,998</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">24,619</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents future lease payments under noncancelable operating and finance leases as of October 31, 2024. Imputed interest represents the difference between undiscounted cash flows and discounted cash flows.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"> <br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,039</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">18,027</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,651</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,228</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">267</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2029 and thereafter<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total lease payments</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,191</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"><br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">18,054</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Imputed interest</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(229</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(57</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,962</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">The following table presents lease costs for 2024, 2023, and 2022.</span><span style="font-size: 10pt; font-family: 'Times New Roman';"><br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,255</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,278</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,253</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Short-term lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,273</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">462</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">469</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Variable lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">595</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">656</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">603</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest on finance lease<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">330</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">426</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">522</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Amortization of ROU assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,950</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,870</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,917</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents statistical information related to the Company&#8217;s operating and finance leases. The information presented is as of the balance sheet dates.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 51%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 51%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> remaining</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> years)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-<br/>
            </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> average discount</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;rate<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">remaining </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;years)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> discount rate</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 51%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating leases</div>
          </td>

    <td colspan="1" style="vertical-align: middle; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.8</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.2</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.7</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.4</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 51%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finance leases</div>
          </td>

    <td colspan="1" style="vertical-align: middle; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">0.2</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.2<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table presents the effects of leases on the Company&#8217;s 2024, 2023, and 2022 consolidated statements of cash flows, and provides leases-related non-cash information for those years.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; padding-bottom: 2px; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for operating leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,241</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,271</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,259</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for finance leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">330</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">429</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">566</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Financing cash flows used for finance leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,521</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">7,289</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">ROU assets obtained in exchange for operating lease obligations</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">842</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">513</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291443328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE-BASED COMPENSATION<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>SHARE-BASED COMPENSATION [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">SHARE-BASED COMPENSATION</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;">NOTE 12 - SHARE-BASED
      COMPENSATION</div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;"> <br/>
    </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In March 2016, shareholders
        approved the Company&#8217;s current equity incentive compensation plan (&#8220;the Plan&#8221;), under which incentive stock options, non-qualified stock options, stock grants, stock-based awards, restricted stock, restricted stock units, stock appreciation rights,
        performance units, performance stock, and other stock or cash awards may be granted. Shares to be issued under the Plan may be authorized and unissued shares, issued shares that have been reacquired by <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company</span> (in the open market or in private transactions), or a combination thereof. The maximum
        number of shares of common stock approved that may be issued under the Plan was four million shares.&#160;<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> On March 16, 2023, at its annual meeting of shareholders,
          the shareholders of Photronics, Inc., approved amendments to the Plan to increase the number of shares available for issuance by an additional one
          million shares, thereby increasing the shares available for issuance under the Plan from four million to five million.</span> Awards may be granted to officers, employees, directors, consultants, advisors, and independent contractors of Photronics or its
        subsidiaries. In the event of a change in control (as defined in the Plan)</span> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">or at the discretion of the compensation committee;</span><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> the vesting of awards may be accelerated. The Plan, aspects of which are more fully described below, prohibits further awards from being issued under prior plans. </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The table below presents
        information on the Company&#8217;s share-based compensation expenses for the three most recent fiscal years. </span> </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Expense reported in:</div>
            </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Cost of goods sold</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,704</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,259</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">868</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64.02%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Selling, general, and administrative</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,124</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,962</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,803</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Research and development</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,062</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">780</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">637</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total expense incurred</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">13,890</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">8,001</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,308</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom">Expense by award type:<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt">Restricted stock awards *<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">13,868</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">7,909</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">5,800</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom">
              <div style="margin-left: 9pt">Stock options<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">1</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">298</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt">Employee stock purchase plan<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">22</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">91</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">210</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom">Total expense incurred<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">13,890<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">8,001<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">6,308<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax benefits of share-based compensation<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,156</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">715</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">449</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">* During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.<br/>
      </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-style: italic;">Restricted Stock Awards</span><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">We periodically grant restricted stock awards, the restrictions on which
      typically lapse over a service period of <span style="-sec-ix-hidden:Fact_35a7636fabec45859dd6fb4811787cac">one</span> to four years. The fair values of the awards are determined on the date of grant, based on the closing stock price of <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> common stock.</span> <span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">A summary of restricted stock award activity during 2024 and the status of the Company&#8217;s&#160; restricted stock awards as of October 31, 2024, is presented below.</span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span>
     <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: #000000 2px solid; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Restricted Stock</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Shares</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-Average</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fair Value at</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Grant Date</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,238,297</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">16.27</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Granted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">865,050</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">29.50</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Vested</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(550,069</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17.74</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cancelled</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(129,676</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.90</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,423,602<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23.23</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Expected to vest as of October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,292,883</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23.14</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents additional information on <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> restricted stock awards for the three most recent fiscal years.</div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Number of shares granted</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">865,050</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">791,925</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">654,224</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Weighted-average grant-date fair value of awards (in dollars per share)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">29.50</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">16.84</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">18.73</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">Compensation costs not yet recognized<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">21,303</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">12,760</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">8,949</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom">Weighted-average amortization period (in years)<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.8</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.8</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.7</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Fair value of awards for which restrictions lapsed</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">9,755</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">6,256</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">5,212</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom">Shares outstanding at balance sheet date<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">1,423,602</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">1,238,297<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">893,704<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div>

      <br class="Apple-interchange-newline"/></div>

<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-align: left; text-transform: none;">Stock Options</div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;">Option awards generally vest in <span style="-sec-ix-hidden:Fact_bbe2f99fe0104d4199695adc89834fdf">one</span> to four years and have a ten-year contractual term. All incentive and non-qualified stock option grants must have an exercise price no less than the market value of the underlying
      common stock on the date of grant. The grant-date fair values of options are based on closing prices of the Company&#8217;s common stock on the dates of grant and are calculated using the Black-Scholes option pricing model. Expected volatility is based on
      the historical volatility of the Company&#8217;s common stock. The Company uses historical option exercise behavior and employee termination data to estimate expected term, which represents the period of time that options granted are expected to remain
      outstanding. The risk-free rate of return for the estimated term of an option is based on the U.S. Treasury yield curve in effect at the date of grant.</div>

<div>
     <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents a summary of stock
      options activity during 2024 and information on stock options outstanding at October 31, 2024.</div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); margin-left: 0px; margin-right: auto; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 55%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
              </span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Shares</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Exercise Price</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); width: 9%; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Remaining</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Contractual Life</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Aggregate</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Intrinsic Value</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">472,275</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.18</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Granted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercised</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(191,650</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">9.86</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Cancellations,
              forfeitures, and adjustments</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; border-bottom: 2px solid rgb(0, 0, 0); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(3,000</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.43</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">277,625</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">1.94 years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">3,445</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercisable at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">277,625</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">1.94 years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">3,445</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Expected to vest as
              of October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">- years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span>
    <span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; text-indent: 18pt;">The table below presents additional information on stock option awards for the three most recent fiscal years.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">Number of options granted in period<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total intrinsic value of options exercised</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,981</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,654</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,108</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash received from option exercises</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,888</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,101</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,275</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%;" valign="bottom">Compensation cost not yet recognized<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">13</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">Weighted-average amortization period for cost not yet recognized (in years)<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">0.2</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div>
       <br/></div>

<div><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-transform: none;">Employee Stock Purchase Plan </span></div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"><span style="font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The Company&#8217;s Employee Stock Purchase Plan (&#8220;ESPP&#8221;) permits employees to purchase
          Photronics, Inc. common shares at 85% of the lower of the closing market price at the commencement or ending date of the Plan year
          (which is approximately one year from the commencement date). The Company recognizes the ESPP expense over that same period. As of
          October 31, 2024, the maximum number of shares of common stock approved by the Company&#8217;s shareholders to be purchased under the ESPP was 1.85
          million shares, of which approximately 1.6 million shares had been issued through October 31, 2024. As of October 31, 2024, there is
          unrecognized compensation cost of $0.2 million.</span></span> </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185640256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EMPLOYEE RETIREMENT PLANS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>EMPLOYEE RETIREMENT PLANS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">EMPLOYEE RETIREMENT PLANS</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 13 - EMPLOYEE RETIREMENT PLANS</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We maintain a 401(k) Savings and Profit-Sharing Plan (&#8220;401(k) Plan&#8221;) which covers all full and certain part-time U.S. employees who
      have completed three months of service and are 18 years of age or older. Under the terms of the 401(k) Plan, employees may contribute up to 50% of
      their salary, subject to certain maximum amounts, which will be matched by the Company at 100% of the employee&#8217;s contributions that are up
      to 4% of the employee&#8217;s compensation. Employee and employer contributions vest immediately upon contribution. The total employer
      contributions for all of the Company&#8217;s defined contribution plans were $1.2 million, $0.8 million and $0.7 million in 2024, 2023, and 2022, respectively.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 retirement benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 70<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480794/715-70-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480482/715-20-55-17<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (q)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/715/tableOfContent<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (p)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480506/715-20-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480126/715-20-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480266/715-60-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186121280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>INCOME TAXES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAXES</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 14 - INCOME TAXES</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">On December 15, 2022, the European Union (EU) Member States formally adopted the EU&#8217;s Pillar Two Directive, which generally provides for a minimum
        effective tax rate of 15%, as established by the Organization for Economic Co-operation and Development (OECD) Pillar Two Framework. The EU effective dates are January 1, 2024, and January 1, 2025, for different aspects of the directive. A
        significant number of other countries are expected to also implement similar legislation with varying effective dates. The Company is currently not subject to Pillar Two but is continuously evaluating the potential impact of the Pillar Two
        Framework to ensure we are compliant in the future.<br/>
      </div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income before the income tax provisions consists of the following:</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">20,145</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,737</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,813</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">227,270</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">271,683</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">237,220</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">247,415</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">269,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">239,033</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div><span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div><span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;">Income Tax Provision</span><br/>
    </div>

<div><span style="font-weight: bold;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The components of our income tax provisions are presented below.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current:</div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">95</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">14</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">64,861</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">71,225</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">58,981</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">64,956</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">71,239</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">58,982</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Deferred:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,402</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(939</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">799</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">(1,389</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">(927</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">809</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,567</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">70,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">59,791</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below presents a reconciliation of income taxes calculated by applying the statutory U.S. federal income tax rate to our
      income tax provisions of the reporting periods.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">U.S. federal income tax at statutory rate</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">51,957</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">56,689</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">50,197</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Changes in valuation allowance</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,986</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(256</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,462</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign rate differential</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,695</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,394</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">7,941</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credits</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(5,209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(2,425</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,368</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Uncertain tax positions, including reserves, settlements and resolutions</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,226</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,328</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,214</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other, net</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,884</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,582</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,269</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"><span style="font-style: italic;">Income tax provision</span><br/>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,567</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">70,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">59,791</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
      </div>

<div>
        <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 18%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Reporting</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Period</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">U.S. Statutory</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Tax Rates<br/>
                </div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics </div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Effective Tax</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Rates</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 40%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Primary Reasons for Differences</div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">2024</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">25.7%</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"><br/>
              </td>

    <td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">26.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td style="vertical-align: top; width: 40%;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; background-color: rgb(204, 238, 255); text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2022</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">25.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div>Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions; and the establishment of uncertain tax positions in non-U.S. jurisdiction.<br/>
                </div>
              </td>

  </tr>


</table>
      </div>

<div>
      <br/></div>

<div style="text-align: left; background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;">Deferred Income Tax Assets
        and Liabilities</div>

<div style="text-align: left;"> <br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The net deferred income tax assets consist of the following:</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">Deferred income tax
                  assets</span></span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net operating losses</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,941</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">26,377</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Reserves not currently deductible</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,776</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credit carryforwards</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12,550</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,442</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,102</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,710</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,844</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="margin-left: 9pt;">Research intangibles<br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,721</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities<br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">4,116</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">5,743</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">62,032</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,074</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Valuation allowances</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(30,633</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(32,619</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">31,399</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">30,455</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Deferred income tax liabilities</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">ROU assets<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(7,351</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(8,193</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Other</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(1,458</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(1,200</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(8,809</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(9,393</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net deferred income tax assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,590</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,062</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 8.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Classification</span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Deferred income tax assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23,059</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,297</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Other liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(469</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(235</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,590</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,062</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">We have established a valuation allowance for a portion of our deferred tax assets because we believe, based on the weight of all available evidence,
      that it is more likely than not that a portion of our deferred tax assets will expire prior to utilization. In 2024 the valuation allowance decreased as a result of management&#8217;s determination that tax benefits on deferred tax assets would more likely
      than not be realized and, therefore, decreased the valuation allowance to include these deferred tax assets.</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Due to the Tax Cuts and Jobs Act, which was signed into law in December 2017, as of fiscal year end 2018, U.S. deferred taxes were no longer provided on
      the undistributed earnings of non-U.S. subsidiaries. Our policy to indefinitely reinvest these earnings in non-U.S. operations remains unchanged for the purpose of determining deferred tax liabilities for U.S. state and foreign withholding taxes.
      Therefore, should we elect in the future to repatriate the remaining foreign earnings deemed to be indefinitely reinvested, we may incur additional state and foreign withholding tax expense on those earnings, the amount of which is not practicable to
      compute.</div>

<div><br/>
      </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"> <span style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Tax </span>Credits and Carryforwards </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present our available operating loss and credit carryforwards as of October 31, 2024, and their related
      expiration periods.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 76%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating Loss Carryforwards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">55,729</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: right; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_2e15202e5cff414388ac6f6c863b56a3">2030</span>-Indefinite</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">135,736</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_34100c5eedc249c59a0ecd6f981b8cf9">2025</span>-Indefinite</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">165</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_347c339d30ed4499a61835a1dcf4e686">2025</span>-<span style="-sec-ix-hidden:Fact_89a71140677543b98550247b393e4c6b">2034</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Tax Credit Carryforwards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal research and development</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,042</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9">2025</span>-<span style="-sec-ix-hidden:Fact_ada4c71dc88e4a1481325de16531bfdc">2044</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">Federal 48D credit<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">2,276</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"><span style="-sec-ix-hidden:Fact_ce8445dff0d5453f9609997657734e2d">2043</span>-<span style="-sec-ix-hidden:Fact_512726a9d52c48fe84be8a862e033b07">2044</span></td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,357</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_8a8dcb3a0ef94c4ab0cae95b84da7412">2025</span>-<span style="-sec-ix-hidden:Fact_908a2b39d03e4d05baa4ed0f4cf2c141">2038</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
      </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; background-color: rgb(255, 255, 255); font-variant: normal; text-transform: none;">Uncertain Tax Positions</div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><br/>
        </div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">We include unrecognized tax benefits in <span style="font-style: italic;">Other liabilities</span>, and we include any applicable interest and penalties related to uncertain tax positions in our income tax provision. </div>

<div><br/></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">A reconciliation of the beginning and ending amounts of unrecognized tax benefits is presented below. The amounts in the table
      include settlements of non-U.S. audits.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at beginning of year before interest and penalties<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,332</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,204</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,534</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(Reductions) additions of tax positions in prior years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">86</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(355</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Additions based on current year tax positions</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">6,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,361</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Settlements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">(835</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(423</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(848</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lapses of statutes of limitations</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(30</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(19</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(19</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year before interest and penalties</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">13,692</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,332</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,204</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest and penalties</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">1,028</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">576</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">395</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year including interest and penalties</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">14,720</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">8,908</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">5,599</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The following table presents additional information
        on our uncertain tax positions, as of the balance sheet dates.</span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left;">Unrecognized tax benefits that, if recognized, would impact the effective tax rate</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>14,720</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>8,908</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div style="text-align: left;">Accrued interest and penalties related to uncertain tax positions</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>1,028</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>576</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Although the timing of the reversal of uncertain tax positions may be uncertain, as they can be dependent upon the settlement of tax audits or
      expirations of statutes of limitations, the Company believes that the amount of uncertain tax positions (including accrued interest and penalties, and net of tax benefits) that may be resolved over the next twelve months is $0.4 million. Resolution of these uncertain tax positions may result from either or both the lapses of statutes of limitations and tax settlements. The
      Company is no longer subject to tax authority examinations in the U.S., major foreign, or state tax jurisdictions for years prior to fiscal year 2019.</div>

<div><br/>
    </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"> Income Tax Payments and Refunds </span></div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">The table below presents income taxes paid and refunds of income taxes received during the reporting periods.</span> </div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> <br/>
        </span></div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left;">Income taxes paid</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>62,520</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>70,362</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>37,770</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div style="text-align: left;">Income tax refunds received</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>2,519</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>485</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>388</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477891/740-270-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/740/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-14<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-21<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186184256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>EARNINGS PER SHARE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">EARNINGS PER SHARE</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 15 - EARNINGS PER SHARE</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The calculation of basic and diluted earnings per share is presented below.<br/>
    </div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;(in thousands, except for per share data)</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">130,688</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">125,485</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">118,786</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Earnings used for diluted earnings per share</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">130,688</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">125,485</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">118,786</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares outstanding:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;">Basic</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,726</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,139</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">60,559</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.15pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -18pt; margin-left: 44.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based payment awards</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">665</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">616</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Potentially dilutive common shares</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">665</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">616</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares-Diluted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">62,391</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,755</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,189</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"><span style="font-weight: bold;">Earnings per share:</span> </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Basic</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.12</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.05</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1.96</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Diluted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.09</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.03</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1.94</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below sets forth the outstanding weighted-average share-based payment awards that were excluded from the calculation of
      diluted earnings per share because their exercise price exceeded the average market value of the common shares for the period or, under application of the treasury stock method, they were otherwise determined to be antidilutive.<br/>
    </div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share based payment awards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">371</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">314</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total potentially dilutive shares excluded</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">371</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">314</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185726896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>COMMITMENTS AND CONTINGENCIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">COMMITMENTS AND CONTINGENCIES</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 16 - COMMITMENTS AND CONTINGENCIES</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the Company&#8217;s unrecognized unconditional purchase obligations, which are mainly payments for the acquisition of property, plant and
        equipment, with a remaining term in excess of one year as of October 31, 2024. The amounts below do not include the Company&#8217;s
        commitments under the Company&#8217;s debt and lease arrangements, which are presented in Notes 8 and 11, respectively.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 2px; border-bottom-style: solid;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Unrecognized </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Commitments</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">70,992</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,052</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2029<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Thereafter</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">74,046</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We are subject to various claims that arise in the ordinary course of business. The Company believes that the Company&#8217;s potential
      liability under such claims, individually and in the aggregate, will not have a material effect on the Company&#8217;s consolidated financial statements.&#160; As of October 31, 2024, and October 31, 2023, the Company was not involved in environmental
      litigation to which a government was a party.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185690240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract', window );"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock', window );">CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 17 - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables set forth the&#160;changes in the Company&#8217;s accumulated other comprehensive (loss) income by component (net of tax
      of $0)&#160;for the years ended October 31, 2024, and October 31, 2023.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended October 31,
              2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Translation</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Adjustments</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Other</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,044</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(690</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,734</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(81</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,549</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive (loss) income attributable to noncontrolling interests</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(6,173</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(6,134</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(85,587</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(732</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(86,319</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: center; font-weight: bold; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; font-weight: bold; border-bottom: #000000 solid 2px;" valign="bottom">Year Ended October 31, 2023</td>

    <td colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-weight: bold; text-align: center;">Foreign Currency<br/>
            </div>
            <div style="text-align: center;"><span style="font-weight: bold;">Translation<br/>
              </span></div>
            <div style="text-align: center;"><span style="font-weight: bold;">Adjustments</span><br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Other</span><br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Total</span><br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(97,790</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(666</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(98,456</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,615</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(3</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,612</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss) attributable to noncontrolling interests</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">4,131</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(21</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">4,110</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,044</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(690</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,734</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tabular information relating to Other Comprehensive Income (OCI) as is applicable to noncontrolling interests. This text block may also include OCI relative to the filing entity, the aforementioned noncontrolling interest OCI, as well as OCI on a consolidated basis.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/810/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185580928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>RISKS AND CONCENTRATIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RisksAndUncertaintiesAbstract', window );"><strong>RISKS AND CONCENTRATIONS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">RISKS AND CONCENTRATIONS</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 18 - RISKS AND CONCENTRATIONS<br/>
    </div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Financial instruments that potentially subject the Company to credit risk principally consist of trade accounts receivable and
      short-term cash investments. The Company sells the Company&#8217;s products primarily to semiconductor and FPD manufacturers in Asia, North America, and Europe. The Company believes that the concentration of credit risk in the Company&#8217;s trade receivables
      is substantially mitigated by the Company&#8217;s ongoing credit evaluation process and relatively short collection terms. The Company does not generally require collateral from customers. The Company establishes an allowance for credit losses based upon
      factors surrounding the credit risk of specific customers, historical trends, and other information.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Our cash and cash equivalents are deposited in several financial institutions, including institutions located within all of the
      countries in which the Company manufactures photomasks. Portions of deposits in some of these institutions may exceed the amount of insurance available for such deposits at these institutions. As these deposits are generally redeemable upon demand
      and are held by high quality, reputable institutions, the Company considers them to bear minimal credit risk. The Company further mitigates credit risks related to the Company&#8217;s cash and cash equivalents by spreading such risk among a number of
      institutions.</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents the percentages of the
        Company&#8217;s net accounts receivable attributable to customers that accounted for more than ten percent of the total balance as of the balance sheet dates.</span> </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">19.2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">21</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">14.6</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>


</table>
       </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> The following table presents the percentages of the Company&#8217;s revenue attributable to customers that accounted for more than ten
      percent of the total revenue during the reporting periods. </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Year Ended</span></td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">15</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">14</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">15</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">11</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">%</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">Customer C<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">9</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">13</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">5</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

  </tr>


</table>
       </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">We operate as a single reporting segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing
      microscopic images of electronic circuits for use in the fabrication of ICs and FPDs. </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of the balance sheet dates, the Company&#8217;s long-lived assets and net assets were, by geographic area, as presented below.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">China</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">256,072</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">379,460</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">249,357</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">317,409</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Europe and Other</div>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">7,010</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(420</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">7,294</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(2,175</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">144,634</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">217,890</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">140,733</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">188,712</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">123,631</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">315,597</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">119,438</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">281,941</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">213,910</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">568,232</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">199,313</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">489,722</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">745,257</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,480,759</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">716,135</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,275,609</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/275/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RisksAndUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RisksAndUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291344464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>RELATED PARTY TRANSACTIONS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_RelatedPartyTransactionsAbstract', window );"><strong>RELATED PARTY TRANSACTIONS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">RELATED PARTY TRANSACTIONS</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 19 - RELATED PARTY TRANSACTIONS</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Our chief executive officer is related to an individual in a position of authority at one of the Company&#8217;s largest customers. The
      Company recorded revenue from this customer of $127.0 million, $126.5 million and $119.0 million, in 2024, 2023, and 2022,
      respectively. As of October 31, 2024, and October 31, 2023, the Company had accounts receivable of $38.8 million and $41.5 million, respectively, from this customer.</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The Company believes that the terms of the transaction described above was negotiated at arm&#8217;s length and were no less favorable to
      the Company than terms the Company could have obtained from unrelated third parties.<br/>
    </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/850/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-6<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291451088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>FAIR VALUE MEASUREMENTS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>FAIR VALUE MEASUREMENTS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">FAIR VALUE MEASUREMENTS</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 20 - FAIR VALUE MEASUREMENTS</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The accounting framework for determining fair value includes a hierarchy for ranking the quality and reliability of the information
      used to measure fair value, which enables the reader of the financial statements to assess the inputs used to develop those measurements. The fair value hierarchy consists of three tiers as follows:</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Level 1- These are investments where values are based on unadjusted quoted prices for identical assets in an active market the Company has the ability to access.<br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 2- These are investments where values are based on quoted market prices that are not active or model derived valuations in which all significant inputs are
        observable in active markets.<br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 3- These are investments where values are derived from techniques in which one or more significant inputs are unobservable.<br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> The following are the major categories of assets measured at fair value on a recurring basis using quoted prices in active markets for identical assets (Level 1),
        significant other observable inputs (Level 2) and significant unobservable inputs (Level 3):</span><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
      <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; width: 36%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> October 31, 2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 36%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt; text-indent: -9pt;">U.S. Government Securities <br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">12,915</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">12,915</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 36%;" valign="bottom">
              <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Time deposits</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">42,184</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">42,184</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">Money market funds <br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">19,187</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">19,187</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 4px;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">Total</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">42,184</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">78,506</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">32,102</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">32,102</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 107<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-107<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2E<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 940<br> -SubTopic 820<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478119/940-820-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185756304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE REPURCHASE PROGRAMS<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract', window );"><strong>SHARE REPURCHASE PROGRAMS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockTextBlock', window );">SHARE REPURCHASE PROGRAMS</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">NOTE 21 - SHARE REPURCHASE PROGRAMS</div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In September 2020, the Company&#8217;s Board of Directors authorized the repurchase of up to $100 million of its common stock,<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> pursuant to a repurchase plan under Rule 10b5-1 of the Securities Act.</span> The repurchase authorization by the Board of Directors has no expiration date, does not obligate us to acquire any
        common stock, and is subject to market conditions. <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Share repurchases under this authorization commenced</span> on September 16, 2020. </span></span>The most recent 10b5-1 plan expired on September 15, 2022, and has not been renewed.</span> </span>In 2022, we repurchased 0.2
        million shares at a cost of $2.5 million (an average of $13.43 per share) and, since the program&#8217;s inception, we have repurchased 5.8 million shares at a cost
        of $68.3 million (an average of $11.70
        per share). All shares repurchased under the program have been retired</span> prior to the end of the fiscal year in which they were purchased. <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">On August 28, 2024, the Board of Directors authorized an increase to the Company&#8217;s existing share repurchase program from the
        remaining $<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">31.7</span> million up to $100 million
        under the Board of Director authorization. In 2024, we did not repurchase any further shares as part of this program.</span> </div>

<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The table below presents information on the repurchase programs for the three most recent fiscal years<span style="font-family: 'Times New Roman';">.<br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"><br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-family: 'Times New Roman';">2024<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2023<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2022<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Number of shares repurchased</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">187</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Cost of shares repurchased</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,522</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Average price paid per share</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13.43</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/505-30/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>45
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291340464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INSIDER TRADING ARRANGEMENTS<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_ecd_InsiderTradingArrLineItems', window );"><strong>Insider Trading Arrangements [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<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_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<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_ecd_Rule10b51ArrTrmntdFlag', window );">Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<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_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_InsiderTradingArrLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<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;">ecd_InsiderTradingArrLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189018800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Basis of Presentation</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold; font-style: italic; font-size: 10pt;">Basis of Presentation</span><span style="font-size: 10pt;"><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; The consolidated financial statements are prepared in conformity with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;). The accounting policies used to prepare these financial statements are the same as
        those used to prepare the consolidated financial statements in prior years, except as described in these notes or for the adoption of new standards as outlined below.<span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;">Principles of Consolidation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">The accompanying consolidated financial statements include the accounts of Photronics, Inc., its
          wholly owned subsidiaries, in which Photronics is considered the primary beneficiary, and the majority-owned subsidiaries which it controls.</span><br/>
        <br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">All intercompany balances and transactions have been eliminated in consolidation.<br/>
        </span><br/>
        &#160;&#160;&#160;&#160;&#160; &#160; <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;">Noncontrolling interests in subsidiaries related to Photronics ownership interests of
          less than 100% are reported as Noncontrolling interests in the consolidated balance sheets. The results of noncontrolling ownership
          interests held by Photronics, net of tax, are reported as Net (income) attributable to noncontrolling interests in the consolidated statements of income.</span></span></div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Estimates and Assumptions</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> </span>
     </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Estimates and Assumptions</div>

<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The preparation of financial statements in
      conformity with U.S. GAAP requires Photronics to make estimates and assumptions that affect amounts reported in them. The Company&#8217;s estimates are based on historical experience and on various assumptions that are believed to be reasonable, based on
      the facts and circumstances available at the time they are made. Subsequent actual results may differ from such estimates. The Company reviews these estimates periodically and reflect any effects of revisions in the period in which they are
      determined.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Translation of Foreign Currency Financial Statements</a></td>
<td class="text">
<div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Translation of Foreign Currency Financial Statements</span><span style="font-size: 10pt;"><br/>
      </span></div>

<div><span style="font-size: 10pt;"><br/>
        </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Photronics reporting currency is the U.S. dollar. The functional currency of the majority of Photronics foreign subsidiaries is their local currency. As such, amounts included in the consolidated
        statements of income, comprehensive income, cash flows, and changes in equity are translated using average exchange rates during each period. Assets and liabilities are translated at period-end exchange rates and resulting foreign currency
        translation adjustments are recorded in the consolidated balance sheets as a component of Accumulated other comprehensive loss.</span></div>
<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_plab_ForeignCurrencyTransactionsPolicyTextBlock', window );">Foreign Currency Transactions</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-weight: bold;">Transactions</span><br/>
      </span></div>

<div><span style="font-size: 10pt;"> </span> <span style="font-size: 10pt;"> </span> <span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
        </span> </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Monetary assets and liabilities denominated in
          currencies other than the functional currency are remeasured into their respective functional currencies at exchange rates in effect at the balance sheet date. The resulting exchange gain or loss is included in Photronics<span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">&#8217;</span> consolidated statements of income as Foreign <span style="font-size: 10pt; font-family: 'Times New Roman';">currency transactions impacts,</span><span style="font-family: 'Times New Roman';"> net</span>.</span><span style="font-size: 10pt;"><br/>
        </span> </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Cash and Cash Equivalents</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Cash and cash equivalents include cash and highly liquid investments with an original
        maturity of three months or less, readily convertible to known amounts of cash, and so near to their maturity that they present insignificant risk of changes in value because of changes in interest rates. Restricted cash is included with cash and
        cash equivalents when reconciling the beginning-of-period and end-of-period total amounts shown on the consolidated statements of cash flows. The carrying values of cash equivalents approximate their fair values, due to the short-term maturities of
        these instruments.</span></div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy', window );">Restricted Cash</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> Restricted Cash</span></span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"><span style="font-weight: bold;"> <br/>
        </span></span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">Restricted cash in the amounts of $2.8 million and $2.6 million are included in Other assets on the
        Company&#8217;s October 31, 2024 and October 31, 2023, consolidated balance sheets, respectively. The restrictions on these amounts are primarily related to land lease agreements and customs requirements.<br/>
      </span></div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentPolicyTextBlock', window );">Investments</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Investments</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: bold; text-align: left; text-indent: 0px; text-transform: none;"><br/>
          </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-size: 10pt;">The Company invests in various bank time deposits, money markets and U.S. Government Securities. </span><span style="font-size: 10pt;">The Company&#8217;s&#160;<span style="color: rgb(0, 0, 0);">classification





















                of investments is as follows:</span></span></div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0);"> <br/>
            </span></div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td colspan="1" style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">Maturing within three months or less from the date of purchase </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Cash and cash equivalents</div>
                    </td>

  </tr>

  <tr>

    <td style="width: 5%; vertical-align: top; font-size: 10pt;">
                      <div style="text-align: center; font-family: 'Times New Roman';">-<br/>
                      </div>
                    </td>

    <td colspan="1" rowspan="1" style="width: 60%; vertical-align: top; font-size: 10pt;">
                      <div>Maturing, as of the date of purchase, more than three months, but </div>
                      <div>with remaining maturities of less than one year, from the balance sheet date </div>
                    </td>

    <td rowspan="1" style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right;">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Short-term investments</div>
                    </td>

  </tr>


</table>

<table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);">


  <tr>

    <td colspan="1" style="width: 5%; vertical-align: top; font-size: 10pt; text-align: center; background-color: rgb(204, 238, 255);">-</td>

    <td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);">
                      <div style="text-align: left; font-family: 'Times New Roman';">Maturing one year or more from the balance sheet date</div>
                    </td>

    <td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);">
                      <div style="font-family: 'Times New Roman'; font-style: normal;">Long-term marketable investments</div>
                    </td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;">&#160;&#160;&#160;&#160;</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">As of
            October 31, 2024 and 2023, all of the Company&#8217;s investments from their dates of purchase had remaining maturities of more than three months, but less than one year, and have been classified as short-term investments.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">Based
            upon the Company&#8217;s intent and ability to hold its time deposits to maturity (which maturities range up to twelve months at purchase), such securities have been classified as held-to-maturity and are carried at amortized cost, which approximates
            market value. Money markets are classified as cash and cash equivalents. The Company&#8217;s U.S. Government Securities are classified as available-for-sale. Available-for-sale investments are reported at fair value, with unrealized gains or losses
            (net of tax) reported in Accumulated other comprehensive income (loss). In the event of a sale of these securities, the Company would determine the cost of the investment sold at the specific individual security level and would include any gain
            or loss in&#160;<span style="font-style: italic;">Interest income and other income, net</span>, where the Company also reports periodic interest earned and the amortization (accretion) of discounts (premiums) related to these investments.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"> <br/>
          </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            table below provides information on the Company&#8217;s available-for-sale debt securities and time deposits classified as short-term investments. </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2024</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2023</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"> Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">U.S. Government Securities<sup>(1)</sup></div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Time deposits</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Total</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-size: 10pt;"><br/>
            </span> </div>

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


  <tr style="vertical-align: top;">

    <td style="width: 18pt; font-size: 10pt;">&#160;</td>

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0); text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0);">Matured during 2024</div>
                    </td>

  </tr>


</table>

            </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            Company&#8217;s investments in marketable securities consist primarily of investments in time deposits and U.S. Government Securities. Market values were determined for each individual security in the investment portfolio. When evaluating the
            investments for other-than-temporary impairment, the Company reviews factors such as length of time and extent to which fair value has been below cost basis, the financial condition of the issuer, and the Company&#8217;s ability and intent to hold
            the investment for a period of time, which may be sufficient for anticipated recovery in market values.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditLossFinancialInstrumentPolicyTextBlock', window );">Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses</a></td>
<td class="text">
<div><span style="font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-size: 10pt;">Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);">&#160;We generally record the Company&#8217;s accounts receivable at their billed amounts. The
        Company recognizes unbilled receivables when the Company has satisfied its performance obligations, has an unconditional right to consideration, but has not yet issued an invoice.&#160; All outstanding past due customer invoices are reviewed for
        collectability during, and at the end of, every reporting period. To the extent that the Company believes a loss on the collection of a customer invoice is probable, the Company records the loss and credits an allowance for credit losses. In the
        event that an amount is determined to be uncollectible, the Company charges the allowance for credit losses and derecognizes the related receivable. Refer to the Company&#8217;s revenue recognition policy, below, for additional information on the
        Company&#8217;s accounting for accounts receivable.</span></div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Inventories</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-size: 10pt;">&#160;Inventories are stated at the lower
        of cost, determined under the first-in, first-out (&#8220;FIFO&#8221;) method, or net realizable value. Please refer to Note 4 for additional information on the Company&#8217;s inventories. Inventory reserves are established when conditions indicate that the net
        realizable value is less than costs due to assigned expiration dates or other causes based on individual facts and circumstances. If net realizable value is less than cost at the balance sheet date, the carrying amount is reduced to the realizable
        value, and the difference is recognized as a loss on valuation of inventories within cost of sales.<br/>
      </span> </div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Plant and Equipment, Net</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Property, Plant and Equipment, Net<br/>
    </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Property, plant and equipment, except as explained below under &#8220;Impairment of Long-Lived Assets,&#8221; is stated at cost less
      accumulated depreciation and amortization. Repairs and maintenance, as well as renewals and replacements of a routine nature, are charged to operations as incurred, while those that improve or extend the lives of existing assets are capitalized. Upon
      sale or other disposition, the cost of the asset and its related accumulated depreciation are removed from the accounts, and any resulting gain or loss is reflected in earnings.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization, essentially all of which are included in <span style="font-style: italic;">Cost of goods sold</span>
      in the Company&#8217;s consolidated statements of income, are computed using the straight-line method over the estimated useful lives of the related assets. Buildings and improvements are depreciated over&#160;10 to&#160;39 years, machinery and equipment over&#160;5 to&#160;15 years, and furniture, fixtures, and
      office equipment over&#160;3 to&#160;5
      years. Leasehold improvements are amortized over the lesser of the life of the lease or the estimated useful life of the improvement. The Company employs judgment when making assumptions about the estimated useful lives and depreciation periods the
      Company assigns to property, plant and equipment, and when events or changes in circumstances such as a significant industry downturn, plant closures, technological obsolescence, or other occurrences indicate that their carrying amounts may not be
      recoverable.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text">
<div><span style="font-size: 10pt;">  </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Impairment of Long-Lived Assets</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such
      assets may not be recoverable. Determinations of recoverability are based upon the Company&#8217;s judgment and estimates of undiscounted future cash flows resulting from the use of the assets and their eventual disposition. Measurement of an impairment
      loss for long-lived assets that the Company expects to hold and use is based on the fair value of the assets, determined using a market or income approach, compared with the carrying value of the asset. The carrying values of assets determined to be
      impaired would be reduced to their estimated fair values.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">Property, plant and equipment and other long-lived assets to be sold or otherwise disposed of are
        reported at the lower of carrying amount or fair value less cost to sell.<br/>
      </span> </div>
<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_plab_TreasuryStockPolicyTextBlock', window );">Treasury Stock</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Treasury Stock</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;The Company records treasury stock purchases under the cost method,
      recording the entire cost of the acquired stock as treasury stock. Gains and losses on subsequent reissuances would be credited or charged to additional paid-in capital, and the Company would employ the average cost method (with average cost being
      determined separately for each share repurchase program), in the event that the Company subsequently reissues shares. When the Company retires the Company&#8217;s treasury stock, any excess of the repurchase price paid over par value is allocated between
      additional paid-in capital and retained earnings.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Revenue Recognition</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;The Company recognizes revenue when, or as, control of a good or service transfers to a customer, in
        an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those goods or services. The Company accounts for an arrangement as a revenue contract when each party has approved and is committed
        to perform under the contract, the rights of the contracting parties regarding the goods or services to be transferred and the payment terms are identifiable, the arrangement has commercial substance, and collection of consideration is probable.
        Substantially all of the Company&#8217;s revenue comes from the sales of photomasks. The Company typically contracts with the Company&#8217;s customers to sell sets of photomasks, which are comprised of multiple layers, the predominance of which the Company
        invoices as they ship to customers. As the photomasks are manufactured to customer specifications, they have no alternative use to the Company and, as the Company&#8217;s contracts generally provide the Company with the right to payment for work
        completed to date, the Company recognizes revenue as the Company performs, or &#8220;over time,&#8221; on most of the Company&#8217;s contracts. The Company measures the Company&#8217;s performance to date using an input method, which is based on the Company&#8217;s estimated
        costs to complete the various manufacturing phases of a photomask. At the end of a reporting period, there are a number of uncompleted revenue contracts on which the Company has performed; for any such contracts under which the Company is entitled
        to be compensated for the Company&#8217;s costs incurred plus a reasonable profit, the Company recognizes revenue and a corresponding contract asset for such performance. The Company accounts for shipping and handling activities that the Company performs
        after a customer obtains control of a good as being activities to fulfill the Company&#8217;s promise to transfer the good to the customer, rather than as promised services, or performance obligations, under the contract. The Company reports the
        Company&#8217;s revenue net of any sales or similar taxes the Company collects on behalf of governmental entities.<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">As stated above, photomasks are manufactured to customer specifications in accordance with their proprietary designs; thus, they are
      individually unique. Due to their uniqueness and other factors, their transaction prices are individually established through negotiations with customers; consequently, the Company&#8217;s photomasks do not have standard or &#8220;list&#8221; prices. The transaction
      prices of the vast majority of the Company&#8217;s revenue contracts include only fixed amounts of consideration. In certain instances, such as when the Company offers a customer an early payment discount, an estimate of variable consideration would be
      included in the transaction price, but only to the extent that a significant reversal of revenue would not occur when the uncertainty related to the variability was resolved.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"><span style="font-size: 10pt;">Contract Assets and Contract Liabilities<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company recognizes a contract asset when the Company&#8217;s performance under a contract precedes the Company&#8217;s receipt of
      consideration from a customer, or before payment is due, and the Company&#8217;s receipt of consideration is conditional upon factors other than the passage of time. Contract assets reflect the Company&#8217;s transfer of control to customers of photomasks that
      are in process or completed but not yet shipped to customers. A receivable is recognized when the Company has an unconditional right to payment for the Company&#8217;s performance, which generally occurs when the Company ships the photomasks. The Company&#8217;s
      contract assets primarily consist of a significant amount of the Company&#8217;s in-process production orders and fully manufactured photomasks which have not yet shipped, for which the Company has an enforceable right to collect consideration (including a
      reasonable profit) in the event the in-process orders are cancelled by customers. On an individual contract basis, the Company nets contract assets with contract liabilities (deferred revenue) for financial reporting purposes. The Company&#8217;s net
      credit losses on the accounts receivable during 2024 were insignificant. The Company did not impair any contract assets or accounts
      receivable in 2024 or 2023.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Contract Costs</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company pays commissions to third-party sales agents for certain sales that they procure on the Company&#8217;s behalf. However, the
      bases of the commissions are the transaction prices of the sales, which are completed in less than one year; thus, no relationship is established with a customer that will result in future business. Therefore, the Company would not recognize any
      portion of these sales commissions as costs of obtaining a contract, nor does the Company currently foresee other circumstances under which the Company would recognize such assets.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-family: 'Times New Roman'; font-weight: bold; font-style: italic;">Remaining Performance Obligations</span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;As the Company is typically required to fulfill customer orders within a short time period, the
        Company&#8217;s backlog of orders is generally not in excess of <span style="-sec-ix-hidden:Fact_5703f7f4215845d39c53f0c87db95a93">one</span> to <span style="-sec-ix-hidden:Fact_6a757c41eb204cc49bd749b3122d8f51">two</span> weeks for IC photomasks and <span style="-sec-ix-hidden:Fact_0b61858f2adb4362aa480cffdbcf8a66">two</span> to <span style="-sec-ix-hidden:Fact_fd0da33cff84449793d061ed13c41db6">three</span> weeks for FPD photomasks. However, the demand for some IC photomasks can extend beyond the traditional time period; thus the backlog, in some
        individual cases, can extend to as long as <span style="-sec-ix-hidden:Fact_9a2dc09c502043edb6ecdcfd73ea6e78">two</span> to three months. More recently however, backlogs for most high demand products have returned to historical levels of less than a month. As allowed under ASC 606 &#8211; <span style="font-style: italic;">Revenue Contracts
          with Customers,</span> the Company has elected not to disclose the Company&#8217;s remaining performance obligations, which represent the costs associated with the completion of the manufacturing process of in-process photomasks related to contracts
        that have an original duration of one year or less.<br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Product Warranties</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The Company&#8217;s photomasks are sold under warranties that generally range from <span style="-sec-ix-hidden:Fact_8a2b9076b8e94965b895c6c0a1257b9a">one</span> to twenty-four months. The Company warrants that the Company&#8217;s
      photomasks conform to customer specifications, and the Company will typically repair, replace, or issue a refund for any photomasks that fail to do so. The warranties do not represent separate performance obligations in the Company&#8217;s revenue
      contracts. Historically, customer claims under warranties have been immaterial.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-size: 10pt;"><br/>
        </span> </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">&#160;&#160;&#160; The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the
          Company commits to entering the agreement and evaluates at that time whether the lease is an operating lease or a finance lease. The Company recognizes right-of-use assets and lease liabilities for operating and finance leases with terms greater
          than 12 months. Please refer to Note 11 &#8211; <span style="font-style: italic;">Leases</span> for additional information.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; The Company&#8217;s involvement in lease arrangements has typically been as a lessee. The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the Company commits to
          entering the agreement. An arrangement is determined to be a lease when it conveys to the Company the right to control the use of an identified asset for a period of time in exchange for consideration. The Company&#8217;s having the right to control an
          identified asset is determined by whether the Company is entitled to substantially all of its economic benefits and can direct its use. The Company recognizes leases on the Company&#8217;s consolidated balance sheet when a lessor makes an asset
          underlying a lease having a term in excess of twelve months available for the Company&#8217;s use. As allowed under ASC Topic 842 &#8211; &#8220;<span style="font-style: italic;">Leases</span>&#8221; (&#8220;Topic 842&#8221;), the Company has elected 1) not to apply the recognition
          requirements to leases that, at their commencement dates, have lease terms of twelve months or less and do not include options to purchase their underlying assets that the Company is reasonably certain to exercise and 2) for all classes of
          assets, the practical expedient to not separate lease components of a contract from non-lease components of a contract. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"><br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; If an arrangement is determined to be, or includes a lease, the Company then applies the classification criteria in ASC 842 - <span style="font-style: italic;">Leases</span> to determine whether the lease is a finance lease or an
          operating lease. For both types of leases, at their commencement dates (which are the dates on which a lessor makes an underlying asset available for the Company&#8217;s use), the Company recognizes Right-of-Use (&#8220;ROU&#8221;) assets, which represent the
          Company&#8217;s rights to use the underlying assets, and lease liabilities which represent the Company&#8217;s obligation to make payments for such rights. The present value of lease payments over the term of the lease provides the basis for the initial
          measurement of ROU assets and their related lease liabilities. Variable lease payments, other than those that are dependent on an index or on a rate (at which they are measured on their commencement dates), are not included in the measurement of
          ROU assets and their related lease liabilities. Lease terms include extension periods if the lease agreement includes an option to extend the lease that the Company is reasonably certain to exercise. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>

<div style="font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; The initial measurement process for finance leases and operating leases is the same, except that, for operating leases, the Company generally applies the
          Company&#8217;s incremental borrowing rates for collateralized borrowings over terms similar to those of the leases to determine the lease liability while, for finance leases, the Company uses the interest rates implicit in the leases. The initial
          measurement of ROU assets may require further adjustments for lease prepayments and initial direct costs the Company incurs. <br/>
        </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 9pt; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> <br/>
        </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"> &#160;&#160;&#160;&#160;&#160;&#160;&#160; Operating leases are expensed on a straight-line basis over the terms of the leases, and are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold, Selling, general and administrative</span>, or <span style="font-style: italic;">Research and development</span> expense in accordance with the use of the underlying asset. Finance lease ROU
          assets are amortized over the estimated useful life of the underlying asset; the expenses are included in the consolidated statement of income in <span style="font-style: italic;">Cost of goods sold</span>. Finance lease liabilities are
          subsequently remeasured by increasing the liability to reflect interest accrued during a period and decreasing the liability to reflect payments made during the period. Interest expense incurred on finance leases is included in <span style="font-style: italic;">Interest expense</span> on the consolidated statements of income.<br/>
          <br/>
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; Cash paid for operating leases and interest paid for finance leases are included in the consolidated statement of cash flows as operating activities in <span style="font-style: italic;">Accounts payable, accrued liabilities and other</span>;
          cash paid for finance lease principal is included in <span style="font-style: italic;">Repayments of debt</span> in the financing activities section of the consolidated statement of cash flows.</span> </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Share-Based Compensation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;">We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#8217;s common stock&#8217;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.</span></div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpensePolicy', window );">Research and Development</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Research and Development</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Research and development costs are expensed as incurred and consist primarily of development efforts related to high-end process
      technologies for advanced subwavelength reticle solutions for IC and FPD photomask technologies. Research and development expenses were $16.6
      million, $13.7 million, and $18.3
      million for the years ended October 31, 2024, 2023 and 2022, respectively.</div>
<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_plab_GovernmentGrantsPolicyTextBlock', window );">Government Grants</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> </span>
     </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Government Grants</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;<span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">The <span style="font-size: 10pt;">Company receives or expects to receive in the future, various types of
          government assistance, primarily in the form of grants or refundable tax credits.&#160; Government assistance is recognized when there is reasonable assurance that: (1) the Company will comply with the relevant conditions and (2) the assistance will
          be received. Government assistance related to reimbursing fixed asset purchases, such as reimbursement grants and refundable federal investment tax credits, are recorded as a reduction to the related asset(s), which then reduces depreciation
          expense over the expected useful life of the asset on a straight-line basis. If some, or all, of the amount of government assistance becomes repayable (e.g. due to non-fulfillment of the grant conditions) or there is no longer reasonable
          assurance the amount will be received (e.g. due to additional interpretive guidance) then the adjustment is accounted for prospectively as a change in accounting estimate. The effect of the change in estimate is recognized in the period in which
          management concludes that it is no longer reasonably assured that all of the grant conditions will be met. A corresponding financial liability is recognized for the amount of the repayment, if any</span>.</span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"> <span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span></span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">Company accounts for funds the Company receives from government grants by either reducing the costs of the
        assets (if the grant relates to capital expenditures) or expenses which could be </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Cost of goods sold, Selling, general and administrative, or Research and development expenses</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income.&#160; If the funds the Company receives cannot be attributed to specific assets or expenses, they would be recognized as other income, and included in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Interest income and other income, net</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the consolidated statements of income. Funds the Company receive from government grants are classified in
        the Company&#8217;s consolidated statements of cash flows as either </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash
        provided by operating activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Net cash provided by investing activities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">, in accordance with how the Company expends the funds. When a grant is received before conditions of the grant have been met, the
        grant is recorded in </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Accrued liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> or </span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Other liabilities</span><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"> in the Consolidated Balance Sheets.&#160; For the years ended October 31, 2024, October 31, 2023, and October 31, 2022, grants recorded in the Company&#8217;s Consolidated Financial Statements were not material.</span></div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"> </span> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">&#160;<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0);">The </span><span style="color: rgb(0, 0, 0);">Company expects to receive refundable
        federal investment tax credits through the CHIPS Act in connection with ongoing expansion projects. As of October 31, 2024, the Company has reduced property, plant and equipment, net by $5.0 million as a result of expected refundable tax credits in connection with the CHIPS Act<span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;">. The Company has also applied for direct capital grants through the CHIPS Act in connection with proposed projects.<br/>
        </span></span></div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text">
<div>
     <span style="font-size: 10pt;"> <br/>
    </span> <span style="font-size: 10pt;"> </span> </div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Income Taxes</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;The income tax provision is computed on the basis of the income or loss before income taxes for each entity in its respective tax
      jurisdiction. Deferred income taxes reflect the tax effects of differences between the carrying amounts of assets and liabilities for financial reporting purposes and their amounts used for income tax purposes, as well as the tax effects of net
      operating losses and tax credit carryforwards. We employ judgment and make assumptions when establishing valuation allowances for deferred income tax assets, if their realization is not deemed to be more likely than not, by considering future market
      growth, operating forecasts, future taxable income, and the mix of earnings among the tax jurisdictions in which we operate. Accordingly, income taxes charged against earnings may have been impacted by changes in the valuation allowances. We are
      eligible for investment tax credits in U.S. and non-U.S. tax jurisdictions. We account for investment tax credits under the &#8220;flow-through&#8221; method of accounting. As permitted in ASC 740 &#8220;Income Taxes&#8221;, under the flow-through method of accounting, the
      tax benefit from an investment tax credit is recorded as a reduction of income taxes in the period in which the credit is generated.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consider income taxes in each of the tax jurisdictions in which we operate in order to determine our effective income tax rate.
      Our current income tax expense is thus identified, and temporary differences resulting from differing treatments of items for tax and financial reporting purposes are assessed. These differences result in deferred tax assets, which are presented on
      our consolidated balance sheets, and deferred tax liabilities, which are included in <span style="font-style: italic;">Other liabilities</span> on our consolidated balance sheets.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;We account for uncertain tax positions by recording a liability for unrecognized tax benefits
        resulting from uncertain tax positions taken, or expected to be taken, in our tax returns. We include any applicable interest and penalties related to uncertain tax positions in the liability and in our income tax provision.<br/>
      </span> </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Earnings Per Share</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Earnings Per Share</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt;">&#160;Basic earnings per share (&#8220;EPS&#8221;) attributed to Photronics shareholders for both basic and diluted is
        computed independently for each period presented and is based on the weighted-average number of common shares outstanding for the period, excluding any dilutive common share equivalents. Diluted EPS reflects the potential dilution that could occur
        if certain share-based payment awards were exercised or earned.<br/>
      </span> </div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConsolidationVariableInterestEntityPolicy', window );">Variable Interest Entities</a></td>
<td class="text">
<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Variable Interest Entities</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We account for the investments the Company makes in certain legal entities in which equity investors do not have: 1) sufficient
      equity at risk for the legal entity to finance its activities without additional subordinated financial support or, 2) as a group, the holders of the equity investment at risk do not have either the power, through voting or similar rights, to direct
      the activities of the legal entity that most significantly impact the entity&#8217;s economic performance or, 3) the obligation to absorb the expected losses of the legal entity or the right to receive expected residual returns of the legal entity as
      &#8220;variable interest entities&#8221;, or &#8220;VIEs&#8221;.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We consolidate the results of any such entity in which the Company has determined that the Company has a controlling financial
      interest. The Company would have a &#8220;controlling financial interest&#8221; (and thus be considered the &#8220;primary beneficiary&#8221; of the entity) in such an entity when the Company has both the power to direct the activities that most significantly affect the
      VIE&#8217;s economic performance and the obligation to absorb the losses of, or right to receive the benefits from, the VIE that could be potentially significant to the VIE. On a quarterly basis, the Company reassesses whether the Company has a controlling
      financial interest in any investments the Company has in these entities.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We would account for investments the Company makes in VIEs in which the Company has determined that the Company does not have a
      controlling financial interest but have a significant influence over, and hold at least a twenty percent ownership interest in, using the
      equity method. An investment not meeting the parameters to be accounted for under the equity method would be accounted for using the cost method, unless the investment had a readily determinable fair value, at which value it would then be reported.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent Accounting Pronouncements</a></td>
<td class="text"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; font-weight: bold; font-size: 10pt;">Recent Accounting Pronouncements</span>
<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">&#160; In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to
          Income Tax Disclosures&#8221;, to enhance the transparency and decision usefulness of income tax disclosures. The amendments in this Update related to the rate reconciliation and income taxes paid disclosures to improve the transparency of income tax
          disclosures by requiring (1) consistent categories and greater disaggregation of information in the rate reconciliation and (2) income taxes paid disaggregated by jurisdiction. The amendments allow investors to better assess, in their capital
          allocation decisions, how an entity&#8217;s worldwide operations and related tax risks and tax planning and operational opportunities affect its income tax rate and prospects for future cash flows. The guidance in this Update will be effective for
          Photronics in its fiscal year 2026 Form 10-K, with early application of the amendments allowed. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> <span style="font-size: 10pt;"><br/>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"> In November 2023, the FASB issued ASU 2023-07, &#8220;Segment Reporting (Topic 280): Improvements
          to Reportable Segment Disclosures&#8221;, which improves reportable segment disclosure requirements, primarily through enhanced disclosures about significant segment expenses. The guidance in this Update is effective for Photronics in its fiscal year
          2025 Form 10-K, with early adoption permitted. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#8217;s disclosures.</span><br/>
      </span> </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ForeignCurrencyTransactionsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for transactions denominated in a currency other than the reporting enterprise's functional currency.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ForeignCurrencyTransactionsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_GovernmentGrantsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for government grants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_GovernmentGrantsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_TreasuryStockPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for treasury stock valuation, including method of recording repurchases (cost or par value method) and method for valuing subsequent resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_TreasuryStockPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationVariableInterestEntityPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Paragraph 2AA<br> -Subparagraph (a)<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-2AA<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-4<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-5A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationVariableInterestEntityPolicy</td>
</tr>
<tr>
<td style="padding-right: 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_CreditLossFinancialInstrumentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.M.2.Q4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483530/326-20-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-14<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479391/326-20-30-5A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479366/326-20-35-8A<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3D<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479175/326-30-30-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3C<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3D<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 13A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479148/326-30-35-13A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 4A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479391/326-20-30-4A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479148/326-30-35-7A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-21<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossFinancialInstrumentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/830/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480091/360-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482338/360-10-05-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-20<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478411/912-330-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482989/270-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for investment in financial asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 12<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for leasing arrangement entered into by lessee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483044/730-10-05-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.C.Q3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.1.Q5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.3.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291328928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PDMCX JOINT VENTURE (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>PDMCX JOINT VENTURE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock', window );">Variable Interest Entities</a></td>
<td class="text">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As required by the guidance in ASC Topic 810 - &#8220;<span style="font-style: italic;">Consolidation</span>&#8221;, the Company evaluated&#160; the Company&#8217;s involvement
      in PDMCX for the purpose of determining whether the Company should consolidate its results in the Company&#8217;s financial statements. The initial step of the Company&#8217;s evaluation was to determine whether PDMCX was a VIE. Due to its lack of sufficient
      equity at risk to finance its activities without additional subordinated financial support, the Company determined that it is a VIE. Having made this determination, the Company then assessed whether the Company was the primary beneficiary of the VIE,
      and concluded that the Company was the primary beneficiary during the current and prior years reporting periods; thus, as required, the PDMCX financial results have been consolidated with Photronics. The Company&#8217;s conclusion was based on the fact
      that the Company held a controlling financial interest in PDMCX (which resulted from the Company&#8217;s having the power to direct the activities that most significantly impacted its economic performance) and had both the obligation to absorb losses and
      the right to receive benefits that could potentially be significant to PDMCX. The Company&#8217;s conclusion that the Company had the power to direct the activities that most significantly affected the economic performance of PDMCX during the current and
      prior year periods were based on the Company&#8217;s right to appoint the majority of its Board of Directors, which has, among others, the powers to manage the business (through its rights to appoint and evaluate PDMCX&#8217;s management), incur indebtedness,
      enter into agreements and commitments, and acquire and dispose of PDMCX&#8217;s assets. In addition, as a result of the 50.01% variable interest
      the Company held during the current and prior year periods, the Company had the obligation to absorb losses, and the right to receive benefits, that could potentially be significant to PDMCX.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185664240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVENUE (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>REVENUE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">The Company&#8217;s invoice terms generally
        range from net <span style="-sec-ix-hidden:Fact_599542974f764e109fc11a4ac9750c4f">thirty</span> to ninety days,
        depending on both the geographic market in which the transaction occurs and the Company&#8217;s payment agreements with specific customers. In the event that the Company&#8217;s evaluation of a customer&#8217;s business prospects and financial condition indicate
        that the customer presents a collectability risk, the Company will modify terms of sale, which may require payment in advance of performance. At the time of adoption, the Company elected the practical expedient allowed under ASC Topic 606 &#8220;Revenue
        from Contracts with Customers&#8221; (&#8220;Topic 606&#8221;) that permits the Company not to adjust a contract&#8217;s promised amount of consideration to reflect a financing component when the period between when the Company transfers control of goods or services to
        customers and when the Company is paid is one year or less.</div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
        </span> </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">In
          instances when the Company is paid in advance of the Company&#8217;s performance, the Company records a contract liability and, as allowed under the practical expedient in Topic 606, recognize interest expense only if the period between when the
          Company receives payment from the customer and the date when the Company expects to be entitled to the payment is greater than one year. Historically, advance payments the Company has received from customers have generally not preceded the
          completion of the Company&#8217;s performance obligations by more than one year. </span> </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-18<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343300978864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE-BASED COMPENSATION (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Stock Options [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text">
<div><span style="font-size: 10pt;">
    </span></div>

<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Share-Based Compensation</div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.</div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;">We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#8217;s common stock&#8217;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.</span></div>
<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_plab_EmployeeStockPurchasePlanPolicyTextBlock', window );">Employee Stock Purchase Plan</a></td>
<td class="text">
<div><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-transform: none;">Employee Stock Purchase Plan </span></div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"><span style="font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The Company&#8217;s Employee Stock Purchase Plan (&#8220;ESPP&#8221;) permits employees to purchase
          Photronics, Inc. common shares at 85% of the lower of the closing market price at the commencement or ending date of the Plan year
          (which is approximately one year from the commencement date). The Company recognizes the ESPP expense over that same period. As of
          October 31, 2024, the maximum number of shares of common stock approved by the Company&#8217;s shareholders to be purchased under the ESPP was 1.85
          million shares, of which approximately 1.6 million shares had been issued through October 31, 2024. As of October 31, 2024, there is
          unrecognized compensation cost of $0.2 million.</span></span> </div>
<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Stock Options [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text">
<div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-style: italic;">Restricted Stock Awards</span><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
<span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">We periodically grant restricted stock awards, the restrictions on which
      typically lapse over a service period of <span style="-sec-ix-hidden:Fact_35a7636fabec45859dd6fb4811787cac">one</span> to four years. The fair values of the awards are determined on the date of grant, based on the closing stock price of <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> common stock.</span><span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Stock Options [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text">
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-align: left; text-transform: none;">Stock Options</div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;">Option awards generally vest in <span style="-sec-ix-hidden:Fact_bbe2f99fe0104d4199695adc89834fdf">one</span> to four years and have a ten-year contractual term. All incentive and non-qualified stock option grants must have an exercise price no less than the market value of the underlying
      common stock on the date of grant. The grant-date fair values of options are based on closing prices of the Company&#8217;s common stock on the dates of grant and are calculated using the Black-Scholes option pricing model. Expected volatility is based on
      the historical volatility of the Company&#8217;s common stock. The Company uses historical option exercise behavior and employee termination data to estimate expected term, which represents the period of time that options granted are expected to remain
      outstanding. The risk-free rate of return for the estimated term of an option is based on the U.S. Treasury yield curve in effect at the date of grant.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_EmployeeStockPurchasePlanPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for Employee Stock Purchase Plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_EmployeeStockPurchasePlanPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.C.Q3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.1.Q5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.3.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185670304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>INCOME TAXES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnremittedEarningsInForeignInvestmentPolicy', window );">Unremitted Earnings in Foreign Investment</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Due to the Tax Cuts and Jobs Act, which was signed into law in December 2017, as of fiscal year end 2018, U.S. deferred taxes were no longer provided on
      the undistributed earnings of non-U.S. subsidiaries. Our policy to indefinitely reinvest these earnings in non-U.S. operations remains unchanged for the purpose of determining deferred tax liabilities for U.S. state and foreign withholding taxes.
      Therefore, should we elect in the future to repatriate the remaining foreign earnings deemed to be indefinitely reinvested, we may incur additional state and foreign withholding tax expense on those earnings, the amount of which is not practicable to
      compute.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxUncertaintiesPolicy', window );">Interest and Penalties Related to Uncertain Tax Positions</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;">We include unrecognized tax benefits in <span style="font-style: italic;">Other liabilities</span>, and we include any applicable interest and penalties related to uncertain tax positions in our income tax provision. </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxUncertaintiesPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for tax positions taken in the tax return filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other types of contingencies related to income taxes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxUncertaintiesPolicy</td>
</tr>
<tr>
<td style="padding-right: 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_UnremittedEarningsInForeignInvestmentPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for tax treatment of unremitted earnings in a foreign investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnremittedEarningsInForeignInvestmentPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186132288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>FAIR VALUE MEASUREMENTS (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>FAIR VALUE MEASUREMENTS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock', window );">Fair Value Financial Instruments</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The accounting framework for determining fair value includes a hierarchy for ranking the quality and reliability of the information
      used to measure fair value, which enables the reader of the financial statements to assess the inputs used to develop those measurements. The fair value hierarchy consists of three tiers as follows:</div>

<div><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Level 1- These are investments where values are based on unadjusted quoted prices for identical assets in an active market the Company has the ability to access.<br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 2- These are investments where values are based on quoted market prices that are not active or model derived valuations in which all significant inputs are
        observable in active markets.<br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> Level 3- These are investments where values are derived from techniques in which one or more significant inputs are unobservable.<br/>
      </span></div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343296469088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock', window );">Available-for-Sale Debt Securities and Time Deposits</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
            table below provides information on the Company&#8217;s available-for-sale debt securities and time deposits classified as short-term investments. </div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><span style="font-size: 10pt;"><br/>
            </span> </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2024</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">October 31, 2023</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Amortized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Unrealized</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Carrying</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"> Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Cost</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Gains</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Losses</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;">Value</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">U.S. Government Securities<sup>(1)</sup></div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Time deposits</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">Total</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">42,184</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,913</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">4</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">(2</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-size: 10pt;">12,915</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-size: 10pt;"><br/>
            </span> </div>

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


  <tr style="vertical-align: top;">

    <td style="width: 18pt; font-size: 10pt;">&#160;</td>

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0); text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
                      <div style="color: rgb(0, 0, 0);">Matured during 2024</div>
                    </td>

  </tr>


</table>

            </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343195450992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCOUNTS RECEIVABLE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccountsReceivableNetCurrentAbstract', window );"><strong>ACCOUNTS RECEIVABLE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Accounts Receivable</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">The

















































          components of&#160;</span><span style="font-style: italic; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">Accounts Receivable&#160;</span><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">at the
          balance sheet dates are presented below.</span></div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"> October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Accounts Receivable</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">172,741</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">171,433</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Unbilled Receivable</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">29,215</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">24,593</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Allowance for Credit Losses</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">(1,126</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">(1,099</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-family: 'Times New Roman'; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">200,830</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">194,927</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountsReceivableNetCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291369824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>OTHER CURRENT ASSETS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_PrepaidExpenseAndOtherAssetsCurrentAbstract', window );"><strong>OTHER CURRENT ASSETS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock', window );">Other Current Assets</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other current assets</span> at
      the balance sheet dates.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Contract assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">11,532</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,984</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid expenses</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,770</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,031</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Recoverable value added taxes</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,684</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Prepaid and refundable income taxes</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,875</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,489</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other<sup> (1)</sup><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">11,175</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,537</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">33,036</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">28,353</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

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


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000; text-align: left;"><sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;">(1)</sup></div>
            </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;">
              <div style="margin: 0px 0px; padding: 0px 0px; color: #000000;">The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#8217;s ongoing expansion projects.</div>
            </td>

  </tr>


</table>

      <div> <br/>
      </div>

    </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PrepaidExpenseAndOtherAssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts of other current assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185655568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INVENTORIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>INVENTORIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventories</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The components of&#160;<span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Inventories&#160;</span>at the balance sheet dates are presented below.</div>

<div><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">56,128</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">48,948</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Work in process</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">398</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,010</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">56,527</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">49,963</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<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.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343296555536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT AND EQUIPMENT, NET (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>PROPERTY, PLANT, AND EQUIPMENT, NET [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment, Net</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-style: italic;">Property, plant and equipment, net</span> at the balance
      sheet dates.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Land</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,419</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,378</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Buildings and improvements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">188,756</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">185,850</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,990,610</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,922,041</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Leasehold improvements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">19,268</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,894</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Furniture, fixtures, and office equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,091</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">15,856</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Construction in progress</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">91,213</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">55,434</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,319,357</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,209,453</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accumulated depreciation and amortization</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,574,100</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,500,209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">745,257</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">709,244</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_plab_FinanceLeaseRightOfUseAssetsTableTextBlock', window );">Information on ROU Assets from Finance Leases</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Information on ROU assets resulting from finance leases, at the balance sheet dates, is presented below.</div>

<div><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Machinery and equipment</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">42,815</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">42,820</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Accumulated amortization</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(10,522</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(7,655</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">35,165</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_plab_DepreciationAndAmortizationExpenseTableTextBlock', window );">Depreciation Expense</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following table presents depreciation expense (including the amortization of ROU assets) related to property, plant and
          equipment incurred during the reporting periods.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;">


  <tr>

    <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"><br/>
                </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
                  <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center;"><span style="font-weight: bold;">2024</span></div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2023</div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; font-weight: bold;">October 31,</div>
                  <div style="text-align: center; font-weight: bold;">2022</div>
                </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
                  <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#160;Depreciation and amortization expense</div>
                </td>

    <td colspan="1" style="font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">82,433</td>

    <td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">$</span></td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">80,472</span></td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">$</span></td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"><span style="font-size: 10pt;">79,971</span></td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
          </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_DepreciationAndAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 depreciation expense including the amortization of right of use assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_DepreciationAndAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_FinanceLeaseRightOfUseAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 right-of-use assets resulting from finance leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_FinanceLeaseRightOfUseAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185591040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PDMCX JOINT VENTURE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>PDMCX JOINT VENTURE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfCondensedIncomeStatementTableTextBlock', window );">Net Income Recorded from Operations</a></td>
<td class="text">
<div><span style="font-family: 'Times New Roman'; font-size: 10pt;">  </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">The following table presents net income the Company recorded from the operations of PDMCX during the reporting periods. </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </span> </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Years Ended</div>
            </td>

    <td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">2022</div>
            </td>

    <td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 64%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income from PDMCX</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">20,074</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">25,098</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">16,714</div>
            </td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfVariableInterestEntitiesTextBlock', window );">Carrying Amounts and Exposure to Loss Related to Assets and Liabilities</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The following table presents the carrying amounts of PDMCX assets and liabilities included in the Company&#8217;s consolidated balance sheets. General
      creditors of PDMCX do not have recourse to the assets of Photronics (other than the net assets of PDMCX); therefore, the Company&#8217;s maximum exposure to loss from PDMCX is the Company&#8217;s interest in the carrying amount of the net assets of the joint
      venture.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> <span style="font-size: 10pt;"><br/>
            </span></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Carrying</div>
            <div style="text-align: center; text-indent: -9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;&#160; Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Interest</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">174,059</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">87,047</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">135,960</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">67,994</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">151,039</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">75,535</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136,334</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">68,181</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">325,098</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">162,582</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">272,294</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136,175</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">40,691</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">20,350</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">36,305</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,156</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Noncurrent liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,320</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,660</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,873</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">937</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">44,011</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,010</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">38,178</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">19,093</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net assets</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">281,087</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">140,572</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">234,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">117,082</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfCondensedIncomeStatementTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 condensed income statement, including, but not limited to, income statements of consolidated entities and consolidation eliminations.</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> -Name Regulation S-X (SX)<br> -Number 210<br> -Section 12<br> -Subsection 04<br> -Paragraph a<br> -Publisher SEC<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfCondensedIncomeStatementTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfVariableInterestEntitiesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 significant judgments and assumptions made in determining whether a variable interest (as defined) held by the entity requires the variable interest entity (VIE) (as defined) to be consolidated and (or) disclose information about its involvement with the VIE, individually or in aggregate (as applicable); the nature of restrictions, if any, on the consolidated VIE's assets and on the settlement of its liabilities reported by an entity in its statement of financial position, including the carrying amounts of such assets and liabilities; the nature of, and changes in, the risks associated with involvement in the VIE; how involvement with the VIE affects the entity's financial position, financial performance, and cash flows; the lack of recourse if creditors (or beneficial interest holders) of the consolidated VIE have no recourse to the general credit of the primary beneficiary (if applicable); the terms of arrangements, giving consideration to both explicit arrangements and implicit variable interests, if any, that could require the entity to provide financial support to the VIE, including events or circumstances that could expose the entity to a loss; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; the significant factors considered and judgments made in determining that the power to direct the activities of a VIE that most significantly impact the VIE's economic performance are shared (as defined); the carrying amounts and classification of assets and liabilities of the VIE included in the statement of financial position; the entity's maximum exposure to loss, if any, as a result of its involvement with the VIE, including how the maximum exposure is determined and significant sources of the entity's exposure to the VIE; a comparison of the carrying amounts of the assets and liabilities and the entity's maximum exposure to loss; information about any liquidity arrangements, guarantees, and (or) other commitments by third parties that may affect the fair value or risk of the entity's variable interest in the VIE; whether or not the entity has provided financial support or other support (explicitly or implicitly) to the VIE that it was not previously contractually required to provide or whether the entity intends to provide that support, including the type and amount of the support and the primary reasons for providing the support; and supplemental information the entity determines necessary to provide.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-5A<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-9<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-4<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfVariableInterestEntitiesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291260256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>ACCRUED LIABILITIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccruedLiabilitiesCurrentAbstract', window );"><strong>ACCRUED LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherCurrentLiabilitiesTableTextBlock', window );">Accrued Liabilities</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt; text-align: left; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Presented



















        below are the components of <span style="font-style: italic;">Accrued liabilities</span> at the balance sheet dates.<br/>
      </div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Compensation related expenses</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">31,188</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">37,218</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income taxes</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">24,200</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">24,080</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Contract liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12,375</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,965</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">Value added and other taxes <br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,837</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">3,523</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant, and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,670</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,624</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Operating leases<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,925</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,912</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Telecommunications and utilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,040</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,311</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Service Contracts<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,448</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,613</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Other<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">9,439</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">7,332</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">87,122</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">94,578</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherCurrentLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other current liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherCurrentLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>59
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291279824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>DEBT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Long-term Debt</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of October 31, 2024, the Current portion of long-term debt and the Long-term debt balances were comprised of finance leases as described below:<br/>
        </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
          <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; width: 85%; white-space: nowrap;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-weight: bold;">As of October 31, 2024</span></div>
                </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance</div>
                  <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">25</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;Varies as Lease matures<br/>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%;" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
                </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom">&#160;Monthly<br/>
                </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
                </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
                </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                  <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
                </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><sup>(1)</sup> <br/>
                </td>

  </tr>


</table>
        </div>

<div><br/></div>

<div>
              <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;">&#160;</td>

    <td style="width: 18pt; vertical-align: top; text-align: right;">
                      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
                    </td>

    <td style="width: auto; vertical-align: top;">
                      <div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.</div>
                    </td>

  </tr>


</table>
            </div>

<div><br/>
        </div>

<div style="display:none;"><br/></div>
<div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;">The table below provides information on the Company&#8217;s long-term debt as of October 31, 2023.</div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
        <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of October 31, 2023</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Principal due:</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Next 12 months</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 13 &#8211; 24</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 25 &#8211; 36</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">12</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Months 37 &#8211; 48</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Months 49 &#8211; 60</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">1</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Long-term debt</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,998</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total debt</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">24,619</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate at balance sheet date</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">N/A</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basis spread on interest rates</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest rate reset</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="font-family: 'Times New Roman'; font-size: 10pt;">N/A</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Maturity date</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">N/A</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment amount</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">Varies as Lease matures</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Periodic payment frequency</div>
              </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom">Monthly</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Loan collateral (carrying amount)</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">35,165</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><sup>(1)</sup> <br/>
              </td>

  </tr>


</table>
      </div>

<div><sup> </sup></div>

<div><br/>
      </div>

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


  <tr style="vertical-align: top;">

    <td style="width: 27pt;">&#160;</td>

    <td style="vertical-align: top; width: 18pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><sup>(1)</sup></div>
              </td>

    <td style="vertical-align: top;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Represents the carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.<br/>
                </div>
              </td>

  </tr>


</table>
         </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185580928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>OTHER LIABILITIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_OtherLiabilitiesDisclosureAbstract', window );"><strong>OTHER LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesTableTextBlock', window );">Other Liabilities</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the components of <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Other liabilities</span> at
        the balance sheet dates.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">
        <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">October 31,</div>
                <div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">2023</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Unrecognized tax benefit</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">14,720</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">8,908</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Post employment benefit</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">12,993</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">11,994</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Contract liabilities</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">8,910</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">12,454</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Tax payable</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4,310</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">6,622</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Operating lease</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,037</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4,218</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,494</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3,195</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">
                <div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Other liabilities</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">47,464</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">47,391</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
      </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherLiabilitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291492544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVENUE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>REVENUE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present the Company&#8217;s revenue for the years ended October 31, 2024, October 31, 2023, and October 31, 2022,
      disaggregated by product type, geographic origin, and timing of recognition.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Product Type</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: bottom; white-space: nowrap; text-align: center;">
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> October 31, </span></div>
            <div><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">IC</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">228,469</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">194,939</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">195,332</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">409,682</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">456,340</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">397,694</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total IC</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">638,151</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">651,279</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">593,026</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">FPD</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">High-end</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">195,365</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">200,842</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">186,988</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Mainstream</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">33,430</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39,955</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">44,535</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total FPD</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">228,795</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">240,797</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">231,523</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">Year Ended</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Geographic Origin*</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;October 31, </div>
            <div>2024</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;October 31, </div>
            <div>2023</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: center; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div>&#160;<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">288,275</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">316,889</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">291,342</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom">China<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">232,941</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">245,378</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">212,598</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">158,017</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">162,235</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">156,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">146,652</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">128,879</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">126,205</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Europe</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39,244</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">36,579</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">36,402</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,817</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">1,863</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 30px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">* This table disaggregates revenue by the location in which it was earned.</span> </div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">Year Ended &#160;&#160; <br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Revenue by Timing of Recognition</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2024</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;">October 31, </div>
            <div style="text-align: center;">2023</div>
          </td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31, </span></div>
            <div style="text-align: center;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2022</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Over time</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">831,500</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">838,628</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">758,359</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">At a point in time</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">35,446</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">53,448</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">66,190</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>&#160;</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">866,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">892,076</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">824,549</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>&#160;</div>
          </td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Contract Balances</a></td>
<td class="text">
<div><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"> <span style="font-family: 'Times New Roman';"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The




            following table provides information about the Company&#8217;s contract balances at the balance sheet dates.</span></span> </div>

<div><span style="font-family: 'Times New Roman';">&#160;</span></div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;">
              <div style="font-weight: bold; font-family: 'Times New Roman';">Classification</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, <br/>
                2024</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Assets</span></div>
            </td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other current assets</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">11,532</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">10,984</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman';">&#160;<span style="text-decoration: underline;">Contract Liabilities</span></div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Accrued liabilities</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,375</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman';">9,965</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-style: italic; font-family: 'Times New Roman';">&#160;Other liabilities</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">8,910</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,454</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">21,285</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman';">22,419</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><span style="font-family: 'Times New Roman';">&#160;</span></div>

<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents revenue recognized
          from contract liabilities that existed at the beginning of the reporting periods. </span><span style="font-family: 'Times New Roman';">&#160;</span> </div>

<div> <span style="font-family: 'Times New Roman';"><br/>
        </span> </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2024</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2023</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">October 31, </div>
              <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';">2022</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="font-family: 'Times New Roman';">Revenue recognized from beginning liability</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">12,222</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">13,966</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman';">8,934</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract 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/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185628704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>LEASES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock', window );">Information on Operating and Finance Leases Included in Consolidated Balance Sheets</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table provides information on operating and finance leases included in the Company&#8217;s consolidated balance sheets.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Operating Leases</span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_e8e8c545bc864b06b0577fcd644ac09b"><span style="-sec-ix-hidden:Fact_b4cb7129b71940b6b50393ee53e87598">Other assets</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,010</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,189</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">ROU Assets &#8211; Finance Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_8706baf0b4a0466d9ef2b89f59b7270e"><span style="-sec-ix-hidden:Fact_765cd50c756e45d59be9c0bd312deb00">Property, plant and equipment, net</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">32,293</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">35,165</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Operating Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bac605cca03d4db9b005c1c5e38ebb4e"><span style="-sec-ix-hidden:Fact_4662dc911fd242c59f78644e7c671198">Accrued liabilities</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,925</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,912</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_f2e4447e1ddf477e8d84073b9710c2d9"><span style="-sec-ix-hidden:Fact_a0cf7b23a5be4102aba701801191947a">Other liabilities</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,037</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,218</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,962</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,130</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Lease Liabilities &#8211; Finance Leases</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_bcdd19554cb14a1b8addbc63acc37d1c"><span style="-sec-ix-hidden:Fact_02bcc5c17bc34ac88d993f4748f0176e">Current portion of long-term debt</span></span><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,972</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"><span style="-sec-ix-hidden:Fact_fc386990839946f5980f8174f7d08fe1"><span style="-sec-ix-hidden:Fact_b0c8a6aa29b74344a7a394c915c7fd4d">Long-term debt</span></span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">25</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,998</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">24,619</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock', window );">Future Lease Payments under Noncancelable Operating and Finance Leases</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents future lease payments under noncancelable operating and finance leases as of October 31, 2024. Imputed interest represents the difference between undiscounted cash flows and discounted cash flows.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"> <br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Finance </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Leases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,039</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">18,027</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,651</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,228</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">267</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2029 and thereafter<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total lease payments</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,191</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"><br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">18,054</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Imputed interest</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(229</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(57</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,962</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">17,997</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Lease Costs</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"><span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);">The following table presents lease costs for 2024, 2023, and 2022.</span><span style="font-size: 10pt; font-family: 'Times New Roman';"><br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,255</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,278</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,253</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Short-term lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,273</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">462</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">469</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Variable lease costs</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">595</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">656</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">603</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest on finance lease<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">330</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">426</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">522</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Amortization of ROU assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,950</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,870</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,917</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock', window );">Weighted-Average Remaining Lease Terms And Weighted-Average Discount Rates</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The
      following table presents statistical information related to the Company&#8217;s operating and finance leases. The information presented is as of the balance sheet dates.</div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 51%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 51%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Classification</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> remaining</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> years)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-<br/>
            </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> average discount</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;rate<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">remaining </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">lease term (in</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#160;years)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">average</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> discount rate</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 51%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating leases</div>
          </td>

    <td colspan="1" style="vertical-align: middle; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.8</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.2</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">3.7</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.4</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 51%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finance leases</div>
          </td>

    <td colspan="1" style="vertical-align: middle; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">0.2</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.2<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">1.5</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
          </td>

  </tr>


</table>
<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_plab_CashAndNonCashInformationRelatedToLeasesTextBlock', window );">Cash and Non-cash Information Related to Leases</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;">The following table presents the effects of leases on the Company&#8217;s 2024, 2023, and 2022 consolidated statements of cash flows, and provides leases-related non-cash information for those years.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; padding-bottom: 2px; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for operating leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,241</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,271</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">2,259</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash flows used for finance leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">330</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">429</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">566</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Financing cash flows used for finance leases</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,621</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,521</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">7,289</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">ROU assets obtained in exchange for operating lease obligations</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">842</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,116</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">513</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_CashAndNonCashInformationRelatedToLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's cash paid for operating leases and ROU assets obtained in exchange for operating lease liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_CashAndNonCashInformationRelatedToLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating 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;">plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 balance sheet information related to leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's weighted-average remaining lease term and weighted-average discount rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291386960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE-BASED COMPENSATION (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>SHARE-BASED COMPENSATION [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Share-based Compensation Expenses</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The table below presents
        information on the Company&#8217;s share-based compensation expenses for the three most recent fiscal years. </span> </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Expense reported in:</div>
            </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Cost of goods sold</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,704</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,259</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">868</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64.02%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Selling, general, and administrative</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10,124</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,962</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">4,803</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">&#160;&#160;&#160;&#160;&#160;Research and development</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,062</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">780</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">637</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total expense incurred</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">13,890</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">8,001</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,308</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom">Expense by award type:<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt">Restricted stock awards *<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">13,868</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">7,909</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">5,800</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom">
              <div style="margin-left: 9pt">Stock options<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">1</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">298</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt">Employee stock purchase plan<br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">22</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">91</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">210</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom">Total expense incurred<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">13,890<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">8,001<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">6,308<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64.02%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax benefits of share-based compensation<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,156</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">715</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">449</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">* During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.<br/>
      </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Restricted Stock Awards Activity</a></td>
<td class="text"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;">A summary of restricted stock award activity during 2024 and the status of the Company&#8217;s&#160; restricted stock awards as of October 31, 2024, is presented below.</span>
<div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span>
     <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: #000000 2px solid; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Restricted Stock</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Shares</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Weighted-Average</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fair Value at</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Grant Date</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,238,297</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">16.27</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Granted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">865,050</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">29.50</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Vested</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(550,069</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17.74</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Cancelled</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(129,676</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.90</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Outstanding at October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,423,602<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23.23</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Expected to vest as of October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,292,883</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23.14</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock', window );">Additional Information on Restricted Stock Awards</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents additional information on <span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">the Company&#8217;s</span> restricted stock awards for the three most recent fiscal years.</div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="display:none;"><br/></div>
<div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Number of shares granted</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">865,050</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">791,925</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">654,224</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Weighted-average grant-date fair value of awards (in dollars per share)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">29.50</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">16.84</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">18.73</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">Compensation costs not yet recognized<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">21,303</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">12,760</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">8,949</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom">Weighted-average amortization period (in years)<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.8</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.8</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">2.7</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">Fair value of awards for which restrictions lapsed</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">9,755</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">6,256</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;">5,212</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom">Shares outstanding at balance sheet date<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">1,423,602</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">1,238,297<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom">893,704<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Stock Options Activity</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;">The table below presents a summary of stock
      options activity during 2024 and information on stock options outstanding at October 31, 2024.</div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </span> </div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); margin-left: 0px; margin-right: auto; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 55%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
              </span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Shares</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Exercise Price</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); width: 9%; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Weighted-Average</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Remaining</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Contractual Life</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Aggregate</div>
            <span style="font-weight: bold;"> </span>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;">Intrinsic Value</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2023</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">472,275</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.18</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Granted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercised</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(191,650</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">9.86</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; width: 55%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Cancellations,
              forfeitures, and adjustments</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; border-bottom: 2px solid rgb(0, 0, 0); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">(3,000</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.43</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Outstanding at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">277,625</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">1.94 years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">3,445</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 55%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Exercisable at
              October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">277,625</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">10.39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">1.94 years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">3,445</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">Expected to vest as
              of October 31, <span style="text-indent: 0pt;">2024</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">- years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock', window );">Additional Information on Stock Option Awards</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; text-indent: 18pt;">The table below presents additional information on stock option awards for the three most recent fiscal years.</div>

<div style="display:none;"><br/></div>
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">Number of options granted in period<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total intrinsic value of options exercised</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,981</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,654</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,108</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash received from option exercises</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,888</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,101</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">5,275</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%;" valign="bottom">Compensation cost not yet recognized<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$<br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">13</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">Weighted-average amortization period for cost not yet recognized (in years)<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">-<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">0.2</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total intrinsic value of options exercised (or share units converted), share-based liabilities paid, and the total fair value of shares vested during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (d)(2)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted-average grant-date fair value of equity options or other equity instruments granted during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>64
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343195094256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>INCOME TAXES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Income Before Income Tax Provision for Domestic and Foreign</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Income before the income tax provisions consists of the following:</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">20,145</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,737</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,813</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">227,270</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">271,683</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">237,220</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$<br/>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">247,415</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">269,946</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">239,033</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Income Tax Provision</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The components of our income tax provisions are presented below.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Current:</div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">95</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">14</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">64,861</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">71,225</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">58,981</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">64,956</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">71,239</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">58,982</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Deferred:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">13</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,402</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(939</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">799</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">(1,389</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">(927</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">809</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,567</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">70,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">59,791</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Income Tax Rate Reconciliation</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below presents a reconciliation of income taxes calculated by applying the statutory U.S. federal income tax rate to our
      income tax provisions of the reporting periods.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">U.S. federal income tax at statutory rate</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">51,957</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">56,689</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">50,197</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Changes in valuation allowance</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,986</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(256</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,462</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign rate differential</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,695</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">11,394</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">7,941</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credits</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(5,209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(2,425</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(1,368</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Uncertain tax positions, including reserves, settlements and resolutions</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,226</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,328</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,214</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Other, net</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,884</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,582</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,269</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"><span style="font-style: italic;">Income tax provision</span><br/>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,567</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">70,312</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">59,791</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
      </div>

<div>
        <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 18%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Reporting</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Period</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">U.S. Statutory</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Tax Rates<br/>
                </div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Photronics </div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Effective Tax</div>
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> Rates</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 40%; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Primary Reasons for Differences</div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">2024</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">25.7%</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"><br/>
              </td>

    <td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%;">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">26.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td style="vertical-align: top; width: 40%;" valign="bottom">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.<br/>
                </div>
              </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 18%; background-color: rgb(204, 238, 255); text-align: center;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2022</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">25.0%</div>
              </td>

    <td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><br/>
                </div>
              </td>

    <td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div>Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions; and the establishment of uncertain tax positions in non-U.S. jurisdiction.<br/>
                </div>
              </td>

  </tr>


</table>
      </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Net Deferred Income Tax Assets</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The net deferred income tax assets consist of the following:</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">As of</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">Deferred income tax
                  assets</span></span></div>
          </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net operating losses</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">18,941</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">26,377</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Reserves not currently deductible</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,776</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Tax credit carryforwards</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">12,550</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,442</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,102</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Property, plant and equipment</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">10,710</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">9,844</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="margin-left: 9pt;">Research intangibles<br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,721</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lease liabilities<br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">4,116</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">5,743</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">62,032</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">63,074</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Valuation allowances</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(30,633</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(32,619</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">31,399</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">30,455</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Deferred income tax liabilities</span></div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">ROU assets<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(7,351</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(8,193</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Other</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(1,458</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(1,200</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(8,809</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(9,393</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net deferred income tax assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,590</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,062</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 8.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">Classification</span><br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Deferred income tax assets</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">23,059</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,297</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">Other liabilities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(469</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(235</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">22,590</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">21,062</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock', window );">Operating Loss Carryforwards</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables present our available operating loss and credit carryforwards as of October 31, 2024, and their related
      expiration periods.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; width: 76%; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Operating Loss Carryforwards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 76%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">55,729</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: right; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_2e15202e5cff414388ac6f6c863b56a3">2030</span>-Indefinite</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$<br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">135,736</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_34100c5eedc249c59a0ecd6f981b8cf9">2025</span>-Indefinite</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Foreign</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">165</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_347c339d30ed4499a61835a1dcf4e686">2025</span>-<span style="-sec-ix-hidden:Fact_89a71140677543b98550247b393e4c6b">2034</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock', window );">Tax Credit Carryforwards</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Tax Credit Carryforwards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Amount</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Expiration Period</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Federal research and development</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">6,042</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9">2025</span>-<span style="-sec-ix-hidden:Fact_ada4c71dc88e4a1481325de16531bfdc">2044</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom">Federal 48D credit<br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$ <br/>
          </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">2,276</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"><span style="-sec-ix-hidden:Fact_ce8445dff0d5453f9609997657734e2d">2043</span>-<span style="-sec-ix-hidden:Fact_512726a9d52c48fe84be8a862e033b07">2044</span></td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">State</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,357</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="-sec-ix-hidden:Fact_8a8dcb3a0ef94c4ab0cae95b84da7412">2025</span>-<span style="-sec-ix-hidden:Fact_908a2b39d03e4d05baa4ed0f4cf2c141">2038</span></div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Reconciliation of Beginning and Ending Amounts of Unrecognized Tax Benefits</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">A reconciliation of the beginning and ending amounts of unrecognized tax benefits is presented below. The amounts in the table
      include settlements of non-U.S. audits.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at beginning of year before interest and penalties<br/>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,332</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,204</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,534</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(Reductions) additions of tax positions in prior years</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">86</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">209</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(355</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Additions based on current year tax positions</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">6,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">3,361</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,892</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Settlements</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">(835</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(423</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(848</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Lapses of statutes of limitations</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">(30</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(19</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(19</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year before interest and penalties</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">13,692</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,332</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,204</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Interest and penalties</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">1,028</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">576</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">395</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at end of year including interest and penalties</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">14,720</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">8,908</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">5,599</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock', window );">Unrecognized Tax Benefits</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The following table presents additional information
        on our uncertain tax positions, as of the balance sheet dates.</span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left;">Unrecognized tax benefits that, if recognized, would impact the effective tax rate</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>14,720</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>8,908</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div style="text-align: left;">Accrued interest and penalties related to uncertain tax positions</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>1,028</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom">
              <div>576</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>
<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_plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock', window );">Income Tax Payments and Refunds</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">The table below presents income taxes paid and refunds of income taxes received during the reporting periods.</span> </div>

<div style="display:none;"><br/></div>
<div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"> <br/>
        </span></div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-weight: bold;">Year Ended</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">October 31,</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left;">Income taxes paid</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$<br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>62,520</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>70,362</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom">
              <div>37,770</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div style="text-align: left;">Income tax refunds received</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>2,519</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>485</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom">
              <div>388</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income taxes paid and refunds.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income before income tax between domestic and foreign jurisdictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the change in unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_SummaryOfTaxCreditCarryforwardsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax credit carryforwards available to reduce future taxable income, including amounts, expiration dates, limitations on use and the related deferred tax assets and valuation allowances.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>65
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185721232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>EARNINGS PER SHARE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Calculation of Basic and Diluted Earnings Per Share</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The calculation of basic and diluted earnings per share is presented below.<br/>
    </div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;(in thousands, except for per share data)</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net income attributable to Photronics, Inc. shareholders</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">130,688</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">125,485</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">118,786</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">-</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Earnings used for diluted earnings per share</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">130,688</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">125,485</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">118,786</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares outstanding:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;">Basic</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,726</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,139</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">60,559</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 25.15pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Effect of dilutive securities:</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom">
            <div style="text-align: left; text-indent: -18pt; margin-left: 44.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share-based payment awards</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">665</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">616</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">&#160;Potentially dilutive common shares</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">665</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">616</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Weighted-average common shares-Diluted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">62,391</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,755</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">61,189</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"><span style="font-weight: bold;">Earnings per share:</span> </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Basic</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.12</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.05</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1.96</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net Income attributable to Photronics shareholders - Diluted</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.09</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2.03</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1.94</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">Outstanding Securities Excluded from Calculation of Diluted Earnings or Loss Per Share</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The table below sets forth the outstanding weighted-average share-based payment awards that were excluded from the calculation of
      diluted earnings per share because their exercise price exceeded the average market value of the common shares for the period or, under application of the treasury stock method, they were otherwise determined to be antidilutive.<br/>
    </div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Share based payment awards</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">371</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">314</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Total potentially dilutive shares excluded</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">371</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">136</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">314</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186543280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>COMMITMENTS AND CONTINGENCIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock', window );">Unrecognized Commitments</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Presented below are the Company&#8217;s unrecognized unconditional purchase obligations, which are mainly payments for the acquisition of property, plant and
        equipment, with a remaining term in excess of one year as of October 31, 2024. The amounts below do not include the Company&#8217;s
        commitments under the Company&#8217;s debt and lease arrangements, which are presented in Notes 8 and 11, respectively.</div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;">


  <tr>

    <td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 2px; border-bottom-style: solid;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Fiscal Year</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Unrecognized </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Commitments</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2025<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">70,992</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2026<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,052</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2027<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2028<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-family: 'Times New Roman'; font-size: 10pt;">2029<br/>
                </span> </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; padding-bottom: 2px;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Thereafter</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">74,046</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation by timing of payment due. Includes, but is not limited to, long-term debt obligation, lease obligation, and purchase 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/2009/role/commonPracticeRef<br> -Name Regulation S-X (SX)<br> -Number 210<br> -Section 12<br> -Subsection 04<br> -Subparagraph (a)<br> -Publisher SEC<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185641360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract', window );"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Changes in Accumulated Other Comprehensive (Loss) Income by Component</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">The following tables set forth the&#160;changes in the Company&#8217;s accumulated other comprehensive (loss) income by component (net of tax
      of $0)&#160;for the years ended October 31, 2024, and October 31, 2023.</div>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Year Ended October 31,
              2024</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Foreign Currency</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Translation</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Adjustments</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Other</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,044</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(690</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,734</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,630</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(81</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">8,549</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive (loss) income attributable to noncontrolling interests</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(6,173</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">39</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(6,134</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2024</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(85,587</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(732</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(86,319</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>

<div><br/>
    </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: center; font-weight: bold; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; font-weight: bold; border-bottom: #000000 solid 2px;" valign="bottom">Year Ended October 31, 2023</td>

    <td colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="font-weight: bold; text-align: center;">Foreign Currency<br/>
            </div>
            <div style="text-align: center;"><span style="font-weight: bold;">Translation<br/>
              </span></div>
            <div style="text-align: center;"><span style="font-weight: bold;">Adjustments</span><br/>
            </div>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Other</span><br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Total</span><br/>
          </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(97,790</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(666</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(98,456</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 64%;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,615</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(3</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">5,612</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other comprehensive income (loss) attributable to noncontrolling interests</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">4,131</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(21</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">4,110</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Balance at October 31, 2023</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,044</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(690</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">(88,734</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186573888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>RISKS AND CONCENTRATIONS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock', window );">Long-Lived Assets by Geographic Area</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">As of the balance sheet dates, the Company&#8217;s long-lived assets and net assets were, by geographic area, as presented below.</div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2024</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Long-lived </div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net Assets</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">China</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">256,072</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">379,460</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">249,357</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">317,409</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Europe and Other</div>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">7,010</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(420</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">7,294</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(2,175</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">144,634</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">217,890</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">140,733</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">188,712</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Korea</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">123,631</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">315,597</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">119,438</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">281,941</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Taiwan</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">213,910</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">568,232</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">199,313</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">489,722</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 52%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">745,257</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,480,759</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">716,135</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,275,609</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<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_AccountsReceivableMember', window );">Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock', window );">Concentration of Risk Factor</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-indent: 18pt;"><span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;">The following table presents the percentages of the
        Company&#8217;s net accounts receivable attributable to customers that accounted for more than ten percent of the total balance as of the balance sheet dates.</span> </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">19.2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">21</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 76%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">14.6</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

  </tr>


</table>
       </div>
<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 );">Revenue [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock', window );">Concentration of Risk Factor</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"> The following table presents the percentages of the Company&#8217;s revenue attributable to customers that accounted for more than ten
      percent of the total revenue during the reporting periods. </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">
      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"><span style="font-weight: bold;">Year Ended</span></td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31,</div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer A</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">15</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">14</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">15</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%;" valign="bottom">
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer B</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">10</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">11</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">%</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">Customer C<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">9</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">13</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">5</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">%</td>

  </tr>


</table>
       </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478785/954-310-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-16<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185694928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>FAIR VALUE MEASUREMENTS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>FAIR VALUE MEASUREMENTS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock', window );">Assets Measured at Fair Value on Recurring Basis</a></td>
<td class="text">
<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> The following are the major categories of assets measured at fair value on a recurring basis using quoted prices in active markets for identical assets (Level 1),
        significant other observable inputs (Level 2) and significant unobservable inputs (Level 3):</span><br/>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> <br/>
      </span></div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">
      <table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: middle; padding-bottom: 2px; width: 36%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> October 31, 2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">October 31, 2023</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 36%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 1</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 2</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Level 3</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; background-color: rgb(204, 238, 255);" valign="bottom">
              <div style="margin-left: 9pt; text-indent: -9pt;">U.S. Government Securities <br/>
              </div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">12,915</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom">12,915</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: middle; width: 36%;" valign="bottom">
              <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;">Time deposits</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">42,184</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">42,184</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">-</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">Money market funds <br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">19,187</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">19,187</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 4px;" valign="bottom">
              <div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left;">Total</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">36,322</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">42,184</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">78,506</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">32,102</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">-</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">$</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">32,102</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
       </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343296637648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE REPURCHASE PROGRAMS (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</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_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract', window );"><strong>SHARE REPURCHASE PROGRAMS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfTreasuryStockByClassTextBlock', window );">Shares Repurchase Programs</a></td>
<td class="text">
<div><span style="font-family: 'Times New Roman';"> </span>
    </div>

<div style="display:none;"><br/></div>
<div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">The table below presents information on the repurchase programs for the three most recent fiscal years<span style="font-family: 'Times New Roman';">.<br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<div><span style="font-family: 'Times New Roman';"><br/>
      </span> </div>

<div><span style="font-family: 'Times New Roman';"> </span></div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;">


  <tr>

    <td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"><br/>
          </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <span style="font-family: 'Times New Roman';">2024<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2023<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="font-family: 'Times New Roman';">2022<br/>
              </span> </div>
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Purchases</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Number of shares repurchased</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">187</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Cost of shares repurchased</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">2,522</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;">Average price paid per share</div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">-</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">13.43</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfTreasuryStockByClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury 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> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfTreasuryStockByClassTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>71
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189062880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Oct. 31, 2024 </div>
<div>Facility</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_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></td>
<td class="nump">11<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_TW', window );">Taiwan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CN', window );">China [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_KR', window );">Korea [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></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_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_EuropeMember', window );">Europe [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ManufacturingFacilitiesAbstract', window );"><strong>Manufacturing Facilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfManufacturingFacilities', window );">Number of manufacturing facilities</a></td>
<td class="nump">2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ManufacturingFacilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ManufacturingFacilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_NumberOfManufacturingFacilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 line item represents the number of manufacturing facilities of the 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;">plab_NumberOfManufacturingFacilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_srt_StatementGeographicalAxis=country_TW">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TW</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_KR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_KR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343187126960">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)<br></strong></div></th>
<th class="th"><div>Oct. 31, 2024</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_plab_PrinciplesOfConsolidationAbstract', window );"><strong>Principles of Consolidation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_PercentageOfOwnershipInterestInSubsidiaries', window );">Percentage of ownership interest in subsidiaries</a></td>
<td class="nump">100.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_PercentageOfOwnershipInterestInSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncontrolling interests in subsidiaries related to Photronics ownership interests of less than are reported as Noncontrolling interests in the consolidated balance sheets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_PercentageOfOwnershipInterestInSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_PrinciplesOfConsolidationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_PrinciplesOfConsolidationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343300071008">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_RestrictedCashAbstract', window );"><strong>Restricted Cash [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash</a></td>
<td class="nump">$ 2,758<span></span>
</td>
<td class="nump">$ 2,575<span></span>
</td>
<td class="nump">$ 2,729<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_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 restricted as to withdrawal or usage. 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RestrictedCashAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestrictedCashAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343187170480">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract', window );"><strong>Available-for-sale [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 42,184<span></span>
</td>
<td class="nump">$ 12,913<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Unrealized gains</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Unrealized losses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="num">(2)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Carrying Value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">12,915<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_CashAndCashEquivalentsAxis=us-gaap_BankTimeDepositsMember', window );">Time Deposits [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract', window );"><strong>Available-for-sale [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">42,184<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_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Unrealized gains</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></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_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Unrealized losses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></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_AvailableForSaleSecuritiesDebtSecurities', window );">Carrying Value</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">0<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_FinancialInstrumentAxis=us-gaap_USTreasuryAndGovernmentMember', window );">U.S. Government Securities [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract', window );"><strong>Available-for-sale [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">12,913<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Unrealized gains</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Unrealized losses</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">0<span></span>
</td>
<td class="num">(2)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Carrying Value</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 12,915<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Matured during 2024</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AvailableForSaleDebtSecuritiesAmortizedCostBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 103<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-103<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481830/320-10-45-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_BankTimeDepositsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_BankTimeDepositsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FinancialInstrumentAxis=us-gaap_USTreasuryAndGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinancialInstrumentAxis=us-gaap_USTreasuryAndGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193524608">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)<br></strong></div></th>
<th class="th"><div>Oct. 31, 2024</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and Improvements [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and Improvements [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">39 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture, Fixtures and Office Equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture, Fixtures and Office Equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193708864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Contract with Customer, Asset and Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostImpairmentLoss', window );">Impairment loss on contract assets</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_AllowanceForDoubtfulAccountsReceivableWriteOffs', window );">Impairment loss on accounts receivable</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</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_plab_ProductWarrantyAbstract', window );"><strong>Product Warranty [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_PeriodOfWarranty', window );">Product warranty period</a></td>
<td class="text">1 month<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</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_plab_ProductWarrantyAbstract', window );"><strong>Product Warranty [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_PeriodOfWarranty', window );">Product warranty period</a></td>
<td class="text">24 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember', window );">IC [Member] | Minimum [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_plab_BacklogOfOrdersAbstract', window );"><strong>Backlog of Orders [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod', window );">Customer order, expected satisfaction period</a></td>
<td class="text">7 days<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_plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod', window );">Customer order, extended satisfaction period</a></td>
<td class="text">2 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember', window );">IC [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_BacklogOfOrdersAbstract', window );"><strong>Backlog of Orders [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod', window );">Customer order, expected satisfaction period</a></td>
<td class="text">14 days<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_plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod', window );">Customer order, extended satisfaction period</a></td>
<td class="text">3 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember', window );">FPD [Member] | Minimum [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_plab_BacklogOfOrdersAbstract', window );"><strong>Backlog of Orders [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod', window );">Customer order, expected satisfaction period</a></td>
<td class="text">14 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember', window );">FPD [Member] | Maximum [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_plab_BacklogOfOrdersAbstract', window );"><strong>Backlog of Orders [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod', window );">Customer order, expected satisfaction period</a></td>
<td class="text">21 days<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_plab_BacklogOfOrdersAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_BacklogOfOrdersAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period in which customer order is expected to be fulfilled, 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period in which customer order is extended to be fulfilled, 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_PeriodOfWarranty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 period of warranty coverage of products sold, 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;">plab_PeriodOfWarranty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ProductWarrantyAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ProductWarrantyAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of direct write-downs of accounts receivable charged against the allowance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalizedContractCostImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerAssetAndLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractWithCustomerAssetAndLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185126096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_ResearchAndDevelopmentExpenseAbstract', window );"><strong>Research and Development Expense [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development expenses</a></td>
<td class="nump">$ 16,576<span></span>
</td>
<td class="nump">$ 13,654<span></span>
</td>
<td class="nump">$ 18,341<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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ResearchAndDevelopmentExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>78
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343187440656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Oct. 31, 2024 </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_plab_GovernmentGrantsAbstract', window );"><strong>Government Grants [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_IncreaseDecreaseInPropertyAndEquipmentNet', window );">Decrease in property and equipment, net</a></td>
<td class="num">$ (5.0)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_GovernmentGrantsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_GovernmentGrantsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_IncreaseDecreaseInPropertyAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) in the amount of property and equipment, net due to result of expected refundable tax credits in connection with the CHIPS Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_IncreaseDecreaseInPropertyAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>79
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291302240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Oct. 31, 2024</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Photronics and DNP [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="nump">20.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_VariableInterestEntityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_VariableInterestEntityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableInterestEntityOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the Variable Interest Entity's (VIE) voting interest owned by (or beneficial interest in) the reporting entity (directly or indirectly).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-5A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableInterestEntityOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185570864">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>ACCOUNTS RECEIVABLE (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AccountsReceivableNetCurrentAbstract', window );"><strong>ACCOUNTS RECEIVABLE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGrossCurrent', window );">Accounts Receivable</a></td>
<td class="nump">$ 172,741<span></span>
</td>
<td class="nump">$ 171,433<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnbilledReceivablesCurrent', window );">Unbilled Receivable</a></td>
<td class="nump">29,215<span></span>
</td>
<td class="nump">24,593<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for Credit Losses</a></td>
<td class="num">(1,126)<span></span>
</td>
<td class="num">(1,099)<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_AccountsReceivableNetCurrent', window );">Total</a></td>
<td class="nump">$ 200,830<span></span>
</td>
<td class="nump">$ 194,927<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_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccountsReceivableNetCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountsReceivableNetCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnbilledReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnbilledReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>81
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189017616">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>OTHER CURRENT ASSETS (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_PrepaidExpenseAndOtherAssetsCurrentAbstract', window );"><strong>OTHER CURRENT ASSETS [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 11,532<span></span>
</td>
<td class="nump">$ 10,984<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,770<span></span>
</td>
<td class="nump">10,031<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ValueAddedTaxReceivableCurrent', window );">Recoverable value added taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,684<span></span>
</td>
<td class="nump">2,312<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_plab_PrepaidAndRefundableIncomeTaxes', window );">Prepaid and refundable income taxes</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,875<span></span>
</td>
<td class="nump">2,489<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsMiscellaneousCurrent', window );">Other</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">11,175<span></span>
</td>
<td class="nump">2,537<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_OtherAssetsCurrent', window );">Total other current assets</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">33,036<span></span>
</td>
<td class="nump">$ 28,353<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_plab_FederalInvestmentTaxCreditsRefundReceivableCurrent', window );">Expected tax credits receivable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 5,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#8217;s ongoing expansion projects.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_FederalInvestmentTaxCreditsRefundReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 receivable amount of federal investment tax credits refund expected to be realized 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_FederalInvestmentTaxCreditsRefundReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_plab_PrepaidAndRefundableIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 prepaid and refundable income taxes classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_PrepaidAndRefundableIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherAssetsMiscellaneousCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other miscellaneous assets expected to be realized or consumed 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsMiscellaneousCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidExpenseAndOtherAssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PrepaidExpenseAndOtherAssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ValueAddedTaxReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of value added taxes due either from customers arising from sales on credit terms, or as previously overpaid to tax authorities. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValueAddedTaxReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>82
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189096656">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>INVENTORIES (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>INVENTORIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 56,128<span></span>
</td>
<td class="nump">$ 48,948<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work in process</a></td>
<td class="nump">398<span></span>
</td>
<td class="nump">1,010<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 56,527<span></span>
</td>
<td class="nump">$ 49,963<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480581/330-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186083616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT AND EQUIPMENT, NET (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 2,319,357<span></span>
</td>
<td class="nump">$ 2,209,453<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation and amortization</a></td>
<td class="num">(1,574,100)<span></span>
</td>
<td class="num">(1,500,209)<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_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">745,257<span></span>
</td>
<td class="nump">709,244<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract', window );"><strong>Finance lease, Right-of-use asset [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization', window );">Finance lease, right-of-use asset, gross</a></td>
<td class="nump">42,815<span></span>
</td>
<td class="nump">42,820<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(10,522)<span></span>
</td>
<td class="num">(7,655)<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_FinanceLeaseRightOfUseAsset', window );">Finance lease, right-of-use asset, net</a></td>
<td class="nump">32,293<span></span>
</td>
<td class="nump">35,165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract', window );"><strong>Depreciation Expense [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">82,433<span></span>
</td>
<td class="nump">80,472<span></span>
</td>
<td class="nump">$ 79,971<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land [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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">11,419<span></span>
</td>
<td class="nump">11,378<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and Improvements [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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">188,756<span></span>
</td>
<td class="nump">185,850<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member]</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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">1,990,610<span></span>
</td>
<td class="nump">1,922,041<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">19,268<span></span>
</td>
<td class="nump">18,894<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture, Fixtures and 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">18,091<span></span>
</td>
<td class="nump">15,856<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember', window );">Construction in Progress [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_PropertyPlantAndEquipmentNetByTypeAbstract', window );"><strong>Property, plant and equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 91,213<span></span>
</td>
<td class="nump">$ 55,434<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 allocation of cost of tangible and intangible assets over their useful lives directly used in production of good and rendering of service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FinanceLeaseRightOfUseAssetAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated 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/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 842<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 842<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of 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/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 842<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentNetByTypeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343300183120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PDMCX JOINT VENTURE, VIE (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2018</div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25<span></span>
</td>
<td class="nump">$ 17,998<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember', window );">Photronics and DNP [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_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised', window );">Period before put or purchase option can be exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty', window );">Number of business days for obtaining required approvals and clearance for exiting party</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 days<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_VariableInterestEntityMeasureOfActivityAbstract', window );"><strong>Net Income (Loss) from Operations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss', window );">Net income from PDMCX</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20,074<span></span>
</td>
<td class="nump">25,098<span></span>
</td>
<td class="nump">$ 16,714<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_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember', window );">Photronics and DNP [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ConsolidatedEntitiesAxis=plab_PDMCXMember', window );">PDMCX [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember', window );">Photronics Interest [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_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.01%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember', window );">DNP [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_VariableInterestEntityAbstract', window );"><strong>Variable Interest Entity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableInterestEntityOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="nump">49.99%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Refers to minimum number of business days for obtaining required approvals and clearance for exiting party from the agreement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consecutive months an investor's ownership can be below 20% before an option to put or purchase the investor's ownership interest may be exercised, 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_VariableInterestEntityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_VariableInterestEntityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of income (loss) from operations derived by the reporting entity during the period from the Variable Interest Entity (VIE).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_VariableInterestEntityMeasureOfActivityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VariableInterestEntityMeasureOfActivityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableInterestEntityOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the Variable Interest Entity's (VIE) voting interest owned by (or beneficial interest in) the reporting entity (directly or indirectly).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-5A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableInterestEntityOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=plab_PhotronicsAndDNPMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidatedEntitiesAxis=plab_PDMCXMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=plab_PDMCXMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189503744">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract', window );"><strong>Carrying amounts of assets and liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Current assets</a></td>
<td class="nump">$ 931,062<span></span>
</td>
<td class="nump">$ 785,450<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">1,712,059<span></span>
</td>
<td class="nump">1,526,221<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Current liabilities</a></td>
<td class="nump">183,811<span></span>
</td>
<td class="nump">185,223<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">231,300<span></span>
</td>
<td class="nump">250,612<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_AssetsNet', window );">Net assets</a></td>
<td class="nump">1,480,759<span></span>
</td>
<td class="nump">1,275,609<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_ConsolidatedEntitiesAxis=plab_PDMCXMember', window );">Carrying Amount [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_plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract', window );"><strong>Carrying amounts of assets and liabilities [Abstract]</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_AssetsCurrent', window );">Current assets</a></td>
<td class="nump">174,059<span></span>
</td>
<td class="nump">135,960<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNoncurrent', window );">Noncurrent assets</a></td>
<td class="nump">151,039<span></span>
</td>
<td class="nump">136,334<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">325,098<span></span>
</td>
<td class="nump">272,294<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Current liabilities</a></td>
<td class="nump">40,691<span></span>
</td>
<td class="nump">36,305<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrent', window );">Noncurrent liabilities</a></td>
<td class="nump">3,320<span></span>
</td>
<td class="nump">1,873<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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">44,011<span></span>
</td>
<td class="nump">38,178<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_AssetsNet', window );">Net assets</a></td>
<td class="nump">281,087<span></span>
</td>
<td class="nump">234,116<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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember', window );">Photronics Interest [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_plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract', window );"><strong>Carrying amounts of assets and liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Current assets</a></td>
<td class="nump">87,047<span></span>
</td>
<td class="nump">67,994<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNoncurrent', window );">Noncurrent assets</a></td>
<td class="nump">75,535<span></span>
</td>
<td class="nump">68,181<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">162,582<span></span>
</td>
<td class="nump">136,175<span></span>
</td>
</tr>
<tr class="re">
<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 );">Current liabilities</a></td>
<td class="nump">20,350<span></span>
</td>
<td class="nump">18,156<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrent', window );">Noncurrent liabilities</a></td>
<td class="nump">1,660<span></span>
</td>
<td class="nump">937<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">22,010<span></span>
</td>
<td class="nump">19,093<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_AssetsNet', window );">Net assets</a></td>
<td class="nump">$ 140,572<span></span>
</td>
<td class="nump">$ 117,082<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 30: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net assets (liabilities).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 30<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479910/205-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidatedEntitiesAxis=plab_PDMCXMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=plab_PDMCXMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidatedEntitiesAxis=us-gaap_VariableInterestEntityPrimaryBeneficiaryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193335760">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>ACCRUED LIABILITIES (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AccruedLiabilitiesCurrentAbstract', window );"><strong>ACCRUED LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Compensation related expenses</a></td>
<td class="nump">$ 31,188<span></span>
</td>
<td class="nump">$ 37,218<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Income taxes</a></td>
<td class="nump">24,200<span></span>
</td>
<td class="nump">24,080<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="nump">12,375<span></span>
</td>
<td class="nump">9,965<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent', window );">Value added and other taxes</a></td>
<td class="nump">2,837<span></span>
</td>
<td class="nump">3,523<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_plab_AccruedPropertyPlantAndEquipmentCurrent', window );">Property, plant, and equipment</a></td>
<td class="nump">2,670<span></span>
</td>
<td class="nump">6,624<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_plab_AccruedOperatingLeasesCurrent', window );">Operating leases</a></td>
<td class="nump">1,925<span></span>
</td>
<td class="nump">1,912<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedUtilitiesCurrent', window );">Telecommunications and utilities</a></td>
<td class="nump">1,040<span></span>
</td>
<td class="nump">1,311<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_plab_AccruedServicesContractedCurrent', window );">Service Contracts</a></td>
<td class="nump">1,448<span></span>
</td>
<td class="nump">2,613<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">9,439<span></span>
</td>
<td class="nump">7,332<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_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">$ 87,122<span></span>
</td>
<td class="nump">$ 94,578<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_AccruedOperatingLeasesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred, but not yet billed, for operating leases, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_AccruedOperatingLeasesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_plab_AccruedPropertyPlantAndEquipmentCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred, but not yet billed, for property, plant and equipment, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_AccruedPropertyPlantAndEquipmentCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_plab_AccruedServicesContractedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of the obligations incurred through that date and payable for contracted services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_AccruedServicesContractedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AccrualForTaxesOtherThanIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 real and property 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 720<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483384/720-30-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedUtilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 utilities, such as electrical power, heating oil, natural gas, and water. 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedUtilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343187735216">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>DEBT, Long-term Debt (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_LongTermDebtByMaturityAbstract', window );"><strong>Long-term debt [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 25<span></span>
</td>
<td class="nump">$ 17,998<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_FinanceLeaseMember', window );">Finance Leases [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_LongTermDebtMaturingInYearOneAbstract', window );"><strong>Long Term Debt Maturing In Year One [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">Next 12 months</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">17,972<span></span>
</td>
<td class="nump">6,621<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtByMaturityAbstract', window );"><strong>Long-term debt [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">Months 13 - 24</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">12<span></span>
</td>
<td class="nump">17,972<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">Months 25 - 36</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">12<span></span>
</td>
<td class="nump">12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">Months 37 - 48</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">Months 49 - 60</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<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_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">25<span></span>
</td>
<td class="nump">17,998<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_DebtLongtermAndShorttermCombinedAmount', window );">Total debt</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 17,997<span></span>
</td>
<td class="nump">$ 24,619<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPaymentTerms', window );">Periodic payment amount</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">Varies as Lease matures<span></span>
</td>
<td class="text">Varies as Lease matures<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment', window );">Periodic payment frequency</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">Monthly<span></span>
</td>
<td class="text">Monthly<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCollateralAmount', window );">Loan collateral (carrying amount)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 32,293<span></span>
</td>
<td class="nump">$ 35,165<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_LongTermDebtMaturingInYearOneAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_LongTermDebtMaturingInYearOneAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCollateralAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of assets pledged to secure a debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCollateralAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentFrequencyOfPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the frequency of periodic payments (monthly, quarterly, annual).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFrequencyOfPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPaymentTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPaymentTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt and lease obligation, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_LongTermDebtByMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongTermDebtByMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=plab_FinanceLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_FinanceLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>88
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343189083472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT, Finance Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">1 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Feb. 28, 2021</div></th>
<th class="th"><div>Jan. 31, 2021</div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Finance lease amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17,997<span></span>
</td>
<td class="nump">$ 24,619<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Seven2MillionFinanceLeaseMember', window );">$7.2 Million Finance Lease [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseTermOfContract1', window );">Finance lease contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Finance lease amount</a></td>
<td class="nump">$ 7,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid', window );">Early buyout option to purchase tool</a></td>
<td class="nump">2,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Seven2MillionFinanceLeaseMember', window );">$7.2 Million Finance Lease [Member] | Monthly [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Finance lease monthly payments</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember', window );">$35.5 Million Finance Lease [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseTermOfContract1', window );">Finance lease contract term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Finance lease amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 35,500<span></span>
</td>
</tr>
<tr class="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 );">Early buyout option to purchase tool</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember', window );">$35.5 Million Finance Lease [Member] | First Three Months [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Finance lease monthly payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember', window );">$35.5 Million Finance Lease [Member] | Following Nine Months [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Finance lease monthly payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember', window );">$35.5 Million Finance Lease [Member] | Forty Eight Months [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Finance lease monthly payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember', window );">$35.5 Million Finance Lease [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_plab_OutstandingCommittedBalanceForCrossDefaultProvision', window );">Outstanding committed balance for cross default provision</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_OutstandingCommittedBalanceForCrossDefaultProvision">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Committed balance outstanding for cross default provision for any agreement or 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;">plab_OutstandingCommittedBalanceForCrossDefaultProvision</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeFinanceLeaseTermOfContract1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeFinanceLeaseTermOfContract1</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentAxis=plab_Seven2MillionFinanceLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_Seven2MillionFinanceLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=plab_MonthlyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_MonthlyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_Three55MillionFinanceLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=plab_FirstThreeMonthsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_FirstThreeMonthsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=plab_FollowingNineMonthsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_FollowingNineMonthsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=plab_FollowedByThirtySixMonthsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_FollowedByThirtySixMonthsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343186087264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT, Xiamen Project Loans (Details) - Xiamen Project Loans [Member]<br> &#165; in Millions, $ in Millions</strong></div></th>
<th class="th" colspan="2">1 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Feb. 28, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Feb. 28, 2023 </div>
<div>CNY (&#165;)</div>
</th>
<th class="th">
<div>Oct. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Nov. 30, 2018 </div>
<div>CNY (&#165;)</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_plab_ProjectLoansAbstract', window );"><strong>Project Loans [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity | &#165;</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 345.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_RepaymentsOfLongTermDebt', window );">Repayments of long-term debt</a></td>
<td class="nump">$ 3.9<span></span>
</td>
<td class="nump">&#165; 26.4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Amount outstanding | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ProjectLoansAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ProjectLoansAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentAxis=plab_ProjectLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_ProjectLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>90
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185751040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT, Xiamen Working Capital Loans (Details) - Xiamen Working Capital Loans [Member]<br> &#165; in Millions, $ in Millions</strong></div></th>
<th class="th" colspan="2">1 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>CNY (&#165;)</div>
</th>
<th class="th">
<div>Oct. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 31, 2024 </div>
<div>CNY (&#165;)</div>
</th>
<th class="th">
<div>Nov. 30, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Nov. 30, 2018 </div>
<div>CNY (&#165;)</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_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 28.1<span></span>
</td>
<td class="nump">&#165; 200.0<span></span>
</td>
<td class="nump">$ 25.0<span></span>
</td>
<td class="nump">&#165; 200.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_LineOfCreditFacilityExpirationDate1', window );">Expiration date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Jul. 31,  2025<span></span>
</td>
<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_RepaymentsOfLongTermDebt', window );">Repayments of long-term debt</a></td>
<td class="nump">$ 3.6<span></span>
</td>
<td class="nump">&#165; 25.6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Amount outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityExpirationDate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the credit facility terminates, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityExpirationDate1</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentAxis=plab_WorkingCapitalLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_WorkingCapitalLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>91
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343188496448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT, Corporate Credit Agreement (Details) - Corporate Credit Agreement [Member] - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Sep. 30, 2018</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_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Term of loan</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity', window );">Current borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries', window );">Cash limit for dividends, distributions and redemption on equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Amount outstanding</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of restricted net assets of consolidated and unconsolidated subsidiaries as of the end of the most recently completed fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(3)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentAxis=plab_AmendedAndRestatedCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=plab_AmendedAndRestatedCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<FILENAME>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193767392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>DEBT, Interest Paid for Debt (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_InterestPaidAbstract', window );"><strong>Interest Paid [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaid', window );">Interest payments</a></td>
<td class="nump">$ 0.3<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 2.8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime', window );">Weighted-average interest rate</a></td>
<td class="nump">1.50%<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_us-gaap_InterestPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestPaidAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InterestPaidAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average interest rate of short-term debt outstanding calculated over time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime</td>
</tr>
<tr>
<td style="padding-right: 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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343291419008">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>OTHER LIABILITIES (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_OtherLiabilitiesDisclosureAbstract', window );"><strong>OTHER LIABILITIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_UnrecognizedTaxBenefitNoncurrent', window );">Unrecognized tax benefit</a></td>
<td class="nump">$ 14,720<span></span>
</td>
<td class="nump">$ 8,908<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PostemploymentBenefitsLiabilityNoncurrent', window );">Post employment benefit</a></td>
<td class="nump">12,993<span></span>
</td>
<td class="nump">11,994<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Contract liabilities</a></td>
<td class="nump">8,910<span></span>
</td>
<td class="nump">12,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesNoncurrent', window );">Tax payable</a></td>
<td class="nump">4,310<span></span>
</td>
<td class="nump">6,622<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">3,037<span></span>
</td>
<td class="nump">4,218<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherSundryLiabilitiesNoncurrent', window );">Other</a></td>
<td class="nump">3,494<span></span>
</td>
<td class="nump">3,195<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_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">$ 47,464<span></span>
</td>
<td class="nump">$ 47,391<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_UnrecognizedTaxBenefitNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of unrecognized tax benefit 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;">plab_UnrecognizedTaxBenefitNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AccruedIncomeTaxesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherLiabilitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherSundryLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Obligations not otherwise itemized or categorized in the footnotes to the financial statements that are expected to be paid after one year (or the normal operating cycle, if longer), from 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherSundryLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_PostemploymentBenefitsLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a classified balance sheet, the carrying amount as of the balance sheet date of the portion of the obligations recognized for the various benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement that is payable after one year (or beyond the operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 712<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481179/712-10-25-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 712<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481179/712-10-25-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>94
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343192689504">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>REVENUE, Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 866,946<span></span>
</td>
<td class="nump">$ 892,076<span></span>
</td>
<td class="nump">$ 824,549<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember', window );">IC [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">638,151<span></span>
</td>
<td class="nump">651,279<span></span>
</td>
<td class="nump">593,026<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_HighEndIntegratedCircuitsMember', window );">High-end [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">228,469<span></span>
</td>
<td class="nump">194,939<span></span>
</td>
<td class="nump">195,332<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_MainstreamIntegratedCircuitsMember', window );">Mainstream [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">409,682<span></span>
</td>
<td class="nump">456,340<span></span>
</td>
<td class="nump">397,694<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember', window );">FPD [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">228,795<span></span>
</td>
<td class="nump">240,797<span></span>
</td>
<td class="nump">231,523<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_HighEndFlatPanelDisplaysMember', window );">High-end [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">195,365<span></span>
</td>
<td class="nump">200,842<span></span>
</td>
<td class="nump">186,988<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=plab_MainstreamFlatPanelDisplaysMember', window );">Mainstream [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">33,430<span></span>
</td>
<td class="nump">39,955<span></span>
</td>
<td class="nump">44,535<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_TW', window );">Taiwan [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">288,275<span></span>
</td>
<td class="nump">316,889<span></span>
</td>
<td class="nump">291,342<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CN', window );">China [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">232,941<span></span>
</td>
<td class="nump">245,378<span></span>
</td>
<td class="nump">212,598<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_KR', window );">Korea [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">158,017<span></span>
</td>
<td class="nump">162,235<span></span>
</td>
<td class="nump">156,139<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">146,652<span></span>
</td>
<td class="nump">128,879<span></span>
</td>
<td class="nump">126,205<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_EuropeMember', window );">Europe [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">39,244<span></span>
</td>
<td class="nump">36,579<span></span>
</td>
<td class="nump">36,402<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=plab_OtherMember', window );">Other [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">1,817<span></span>
</td>
<td class="nump">2,116<span></span>
</td>
<td class="nump">1,863<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Over Time [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">831,500<span></span>
</td>
<td class="nump">838,628<span></span>
</td>
<td class="nump">758,359<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">At a Point in Time [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of Revenue [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 35,446<span></span>
</td>
<td class="nump">$ 53,448<span></span>
</td>
<td class="nump">$ 66,190<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">This table disaggregates revenue by the location in which it was earned.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisaggregationOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_IntegratedCircuitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_HighEndIntegratedCircuitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_HighEndIntegratedCircuitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_MainstreamIntegratedCircuitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_MainstreamIntegratedCircuitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_FlatPanelDisplaysMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_HighEndFlatPanelDisplaysMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_HighEndFlatPanelDisplaysMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=plab_MainstreamFlatPanelDisplaysMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=plab_MainstreamFlatPanelDisplaysMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_TW">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TW</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_KR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_KR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=plab_OtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_OtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>95
<FILENAME>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343184718512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Contract with Customer, Asset and Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="nump">$ 21,285<span></span>
</td>
<td class="nump">$ 22,419<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ChangeInContractWithCustomerLiabilityAbstract', window );"><strong>Change in Contract with Customer, Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Revenue recognized from beginning liability</a></td>
<td class="nump">12,222<span></span>
</td>
<td class="nump">13,966<span></span>
</td>
<td class="nump">$ 8,934<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_OtherCurrentAssetsMember', window );">Other Current Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Contract with Customer, Asset and Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNet', window );">Contract assets</a></td>
<td class="nump">11,532<span></span>
</td>
<td class="nump">10,984<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_AccruedLiabilitiesMember', window );">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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Contract with Customer, Asset and Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="nump">12,375<span></span>
</td>
<td class="nump">9,965<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_OtherLiabilitiesMember', window );">Other 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_ContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Contract with Customer, Asset and Liability [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="nump">$ 8,910<span></span>
</td>
<td class="nump">$ 12,454<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</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_RevenuePerformanceObligationAbstract', window );"><strong>Revenue, Performance Obligation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ProductInvoiceTerm', window );">Product invoice term</a></td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuePerformanceObligationAbstract', window );"><strong>Revenue, Performance Obligation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ProductInvoiceTerm', window );">Product invoice term</a></td>
<td class="text">90 days<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_plab_ProductInvoiceTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 term of the product invoiced for payment settlement, 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;">plab_ProductInvoiceTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_ChangeInContractWithCustomerLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ChangeInContractWithCustomerLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractWithCustomerAssetAndLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenuePerformanceObligationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenuePerformanceObligationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_OtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OtherLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>96
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343188952240">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AssetsAndLiabilitiesLesseeAbstract', window );"><strong>Operating and Finance Leases included in Consolidated Balance Sheets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">ROU Assets - Operating Leases</a></td>
<td class="nump">$ 5,010<span></span>
</td>
<td class="nump">$ 6,189<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Other Assets, Noncurrent<span></span>
</td>
<td class="text">Other Assets, Noncurrent<span></span>
</td>
</tr>
<tr class="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 );">ROU Assets - Finance Leases</a></td>
<td class="nump">$ 32,293<span></span>
</td>
<td class="nump">$ 35,165<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Property, Plant and Equipment, Net<span></span>
</td>
<td class="text">Property, Plant and Equipment, Net<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityAbstract', window );"><strong>Operating Lease Liability [Abstract]</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_OperatingLeaseLiabilityCurrent', window );">Operating Lease Liability - Current</a></td>
<td class="nump">$ 1,925<span></span>
</td>
<td class="nump">$ 1,912<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Accrued Liabilities, Current<span></span>
</td>
<td class="text">Accrued Liabilities, Current<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating Lease Liability, Noncurrent</a></td>
<td class="nump">$ 3,037<span></span>
</td>
<td class="nump">$ 4,218<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Other Liabilities, Noncurrent<span></span>
</td>
<td class="text">Other Liabilities, Noncurrent<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease Liabilities - Operating Leases</a></td>
<td class="nump">$ 4,962<span></span>
</td>
<td class="nump">$ 6,130<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityAbstract', window );"><strong>Finance Lease Liability [Abstract]</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_FinanceLeaseLiabilityCurrent', window );">Finance Lease Liability, Current</a></td>
<td class="nump">$ 17,972<span></span>
</td>
<td class="nump">$ 6,621<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Long-Term Debt and Lease Obligation, Current<span></span>
</td>
<td class="text">Long-Term Debt and Lease Obligation, Current<span></span>
</td>
</tr>
<tr class="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">$ 25<span></span>
</td>
<td class="nump">$ 17,998<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Long-Term Debt and Lease Obligation<span></span>
</td>
<td class="text">Long-Term Debt and Lease Obligation<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_FinanceLeaseLiability', window );">Lease Liabilities - Finance Leases</a></td>
<td class="nump">$ 17,997<span></span>
</td>
<td class="nump">$ 24,619<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_AssetsAndLiabilitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsAndLiabilitiesLesseeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinanceLeaseLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current 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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes noncurrent 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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes finance lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes noncurrent operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates line item in statement of financial position that includes operating lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<FILENAME>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193356528">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Future Lease Payments Under Noncancelable Operating Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">$ 2,039<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2026</a></td>
<td class="nump">1,651<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2027</a></td>
<td class="nump">1,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2028</a></td>
<td class="nump">267<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_plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour', window );">2029 and thereafter</a></td>
<td class="nump">6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">5,191<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Imputed interest</a></td>
<td class="num">(229)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Operating lease liabilities</a></td>
<td class="nump">4,962<span></span>
</td>
<td class="nump">$ 6,130<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Future Lease Payments Under Noncancelable Finance Leases [Abstract]</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_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">18,027<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2026</a></td>
<td class="nump">13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2027</a></td>
<td class="nump">13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2028</a></td>
<td class="nump">1<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_plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour', window );">2029 and thereafter</a></td>
<td class="nump">0<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_FinanceLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">18,054<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Imputed interest</a></td>
<td class="num">(57)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Finance lease liabilities</a></td>
<td class="nump">$ 17,997<span></span>
</td>
<td class="nump">$ 24,619<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 leases, due after fourth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_FinanceLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinanceLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343190246800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES, Lease Cost (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_LeaseCostAbstract', window );"><strong>Lease, Cost [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease costs</a></td>
<td class="nump">$ 2,255<span></span>
</td>
<td class="nump">$ 2,278<span></span>
</td>
<td class="nump">$ 2,253<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease costs</a></td>
<td class="nump">1,273<span></span>
</td>
<td class="nump">462<span></span>
</td>
<td class="nump">469<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableLeaseCost', window );">Variable lease costs</a></td>
<td class="nump">595<span></span>
</td>
<td class="nump">656<span></span>
</td>
<td class="nump">603<span></span>
</td>
</tr>
<tr class="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 );">Interest on finance lease</a></td>
<td class="nump">330<span></span>
</td>
<td class="nump">426<span></span>
</td>
<td class="nump">522<span></span>
</td>
</tr>
<tr class="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 );">Amortization of ROU assets</a></td>
<td class="nump">$ 2,950<span></span>
</td>
<td class="nump">$ 2,870<span></span>
</td>
<td class="nump">$ 2,917<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_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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_LeaseCostAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseCostAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>R84.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193664880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>LEASES, Operating and Finance Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract', window );"><strong>Weighted Average Remaining Lease Terms, Discount Rates [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating leases, Weighted-average remaining lease term</a></td>
<td class="text">2 years 9 months 18 days<span></span>
</td>
<td class="text">3 years 8 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 leases, Weighted-average discount rate</a></td>
<td class="nump">3.20%<span></span>
</td>
<td class="nump">2.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1', window );">Finance leases, Weighted-average remaining lease term</a></td>
<td class="text">2 months 12 days<span></span>
</td>
<td class="text">1 year 2 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent', window );">Finance leases, Weighted-average discount rate</a></td>
<td class="nump">1.50%<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_CashAndNonCashInformationRelatedToLeasesAbstract', window );"><strong>Cash and Non-cash Information Related to Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 cash flows used for operating leases</a></td>
<td class="nump">$ 2,241<span></span>
</td>
<td class="nump">$ 2,271<span></span>
</td>
<td class="nump">$ 2,259<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestPaymentOnLiability', window );">Operating cash flows used for finance leases</a></td>
<td class="nump">330<span></span>
</td>
<td class="nump">429<span></span>
</td>
<td class="nump">566<span></span>
</td>
</tr>
<tr class="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 );">Financing cash flows used for finance leases</a></td>
<td class="nump">6,621<span></span>
</td>
<td class="nump">6,521<span></span>
</td>
<td class="nump">7,289<span></span>
</td>
</tr>
<tr class="ro">
<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 );">ROU assets obtained in exchange for operating lease obligations</a></td>
<td class="nump">$ 842<span></span>
</td>
<td class="nump">$ 5,116<span></span>
</td>
<td class="nump">$ 513<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_CashAndNonCashInformationRelatedToLeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_CashAndNonCashInformationRelatedToLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestPaymentOnLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 paid 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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestPaymentOnLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FinanceLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 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_FinanceLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<FILENAME>R85.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343190024416">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>SHARE-BASED COMPENSATION (Details)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Mar. 16, 2023 </div>
<div>shares</div>
</th>
<th class="th">
<div>Oct. 31, 2024 </div>
<div>USD ($) </div>
<div>Executive </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Oct. 31, 2023 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Oct. 31, 2022 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Mar. 15, 2023 </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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Maximum number of shares of common stock that may be issued (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized', window );">Additional shares available for issuance (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_plab_NumberOfExecutivesDeparted', window );">Number of executives departed from company | Executive</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<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_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,890<span></span>
</td>
<td class="nump">$ 8,001<span></span>
</td>
<td class="nump">$ 6,308<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions', window );">Income tax benefits of share-based compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,156<span></span>
</td>
<td class="nump">715<span></span>
</td>
<td class="nump">449<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of Goods Sold [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,704<span></span>
</td>
<td class="nump">1,259<span></span>
</td>
<td class="nump">868<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, General and Administrative [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,124<span></span>
</td>
<td class="nump">5,962<span></span>
</td>
<td class="nump">4,803<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and Development [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,062<span></span>
</td>
<td class="nump">780<span></span>
</td>
<td class="nump">637<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,868<span></span>
</td>
<td class="nump">$ 7,909<span></span>
</td>
<td class="nump">$ 5,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares [Roll Forward]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,238,297<span></span>
</td>
<td class="nump">893,704<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">865,050<span></span>
</td>
<td class="nump">791,925<span></span>
</td>
<td class="nump">654,224<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(550,069)<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Cancelled (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(129,676)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,423,602<span></span>
</td>
<td class="nump">1,238,297<span></span>
</td>
<td class="nump">893,704<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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest', window );">Expected to vest (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,292,883<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted-Average Fair Value at Grant Date [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at beginning of period (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16.27<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29.5<span></span>
</td>
<td class="nump">$ 16.84<span></span>
</td>
<td class="nump">$ 18.73<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17.74<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Cancelled (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.9<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at end of period (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23.23<span></span>
</td>
<td class="nump">$ 16.27<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue', window );">Expected to vest (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 23.14<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Fair value of awards for which restrictions lapsed</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,755<span></span>
</td>
<td class="nump">$ 6,256<span></span>
</td>
<td class="nump">$ 5,212<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract', window );"><strong>Estimated Expenses Not Yet Incurred [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Compensation cost not yet recognized</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,303<span></span>
</td>
<td class="nump">$ 12,760<span></span>
</td>
<td class="nump">$ 8,949<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted-average amortization period (in years)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years 9 months 18 days<span></span>
</td>
<td class="text">2 years 9 months 18 days<span></span>
</td>
<td class="text">2 years 8 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Minimum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Maximum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Selling, General and Administrative [Member] | Executive [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Options [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 298<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract', window );"><strong>Estimated Expenses Not Yet Incurred [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Compensation cost not yet recognized</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted-average amortization period (in years)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_StockOptionsActivityAbstract', window );"><strong>Stock Options Activity [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Contractual term</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Shares [Roll Forward]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">472,275<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(191,650)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod', window );">Cancellations, forfeitures, and adjustments (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">277,625<span></span>
</td>
<td class="nump">472,275<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable at end of period (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">277,625<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Expected to vest (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted-Average Exercise Price [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at beginning of period (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.18<span></span>
</td>
<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9.86<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Cancellations, forfeitures, and adjustments (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.43<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at end of period (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.39<span></span>
</td>
<td class="nump">$ 10.18<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable at end of period (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.39<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Expected to vest (in dollars per share) | $ / shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract', window );"><strong>Weighted-Average Remaining Contractual Life [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 11 months 8 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable at end of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 11 months 8 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract', window );"><strong>Aggregate Intrinsic Value [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding at end of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,445<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Exercisable at end of period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,445<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Expected to vest</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Options Exercised [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Total intrinsic value of options exercised</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,981<span></span>
</td>
<td class="nump">$ 1,654<span></span>
</td>
<td class="nump">$ 5,108<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Cash received from options exercises</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,888<span></span>
</td>
<td class="nump">1,101<span></span>
</td>
<td class="nump">5,275<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Options [Member] | Minimum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Stock Options [Member] | Maximum [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockMember', window );">Employee Stock Purchase Plan [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract', window );"><strong>Share-based Compensation [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Maximum number of shares of common stock that may be issued (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,850,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Expense incurred</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 22<span></span>
</td>
<td class="nump">$ 91<span></span>
</td>
<td class="nump">$ 210<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Award vesting period</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Options Exercised [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent', window );">Percent of market price that participants pay for shares subscribed</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued', window );">Total shares issued since inception (in shares) | shares</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation cost</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="6"></td></tr>
<tr><td colspan="6"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_NumberOfExecutivesDeparted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 senior executives departed from the company during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_NumberOfExecutivesDeparted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of shares that have been issued since the inception of the Company's employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number as of the balance sheet date of outstanding restricted stock awards that are expected to vest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average fair value at grant date of restricted stock that is expected to vest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares under options that were cancelled, forfeited, or adjusted during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_StockOptionsActivityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_StockOptionsActivityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedArrangementsToObtainGoodsAndServicesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 additional shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (e)(1)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchase price of common stock expressed as a percentage of its fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent</td>
</tr>
<tr>
<td style="padding-right: 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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_ExecutiveOfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=srt_ExecutiveOfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EmployeeStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>101
<FILENAME>R86.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193270320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EMPLOYEE RETIREMENT PLANS (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_CompensationAndRetirementDisclosureAbstract', window );"><strong>EMPLOYEE RETIREMENT PLANS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_NumberOfMonthsOfServiceCompleted', window );">Number of months of service completed to come under retirement plan</a></td>
<td class="text">3 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan', window );">Minimum age of employees to come under retirement plan</a></td>
<td class="text">18 years<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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Percentage of salary that can be contributed by the employee</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Maximum percentage of employees' contributions that Company will match</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Maximum percentage of employees' gross pay that Company will match</a></td>
<td class="nump">4.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanCostRecognized', window );">Company's contribution to defined contribution retirement plans</a></td>
<td class="nump">$ 1.2<span></span>
</td>
<td class="nump">$ 0.8<span></span>
</td>
<td class="nump">$ 0.7<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 minimum age of employees to come under retirement plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_plab_NumberOfMonthsOfServiceCompleted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the number of months of service completed to come under retirement plans.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_NumberOfMonthsOfServiceCompleted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanCostRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost for defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 70<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480794/715-70-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanCostRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 employer matches of the employee's percentage contribution matched.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<FILENAME>R87.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185931376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES, Components of Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract', window );"><strong>Components of Income Before Income Tax Provision [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">United States</a></td>
<td class="nump">$ 20,145<span></span>
</td>
<td class="num">$ (1,737)<span></span>
</td>
<td class="nump">$ 1,813<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Foreign</a></td>
<td class="nump">227,270<span></span>
</td>
<td class="nump">271,683<span></span>
</td>
<td class="nump">237,220<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax provision</a></td>
<td class="nump">247,415<span></span>
</td>
<td class="nump">269,946<span></span>
</td>
<td class="nump">239,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">95<span></span>
</td>
<td class="nump">14<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">64,861<span></span>
</td>
<td class="nump">71,225<span></span>
</td>
<td class="nump">58,981<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current income tax provision</a></td>
<td class="nump">64,956<span></span>
</td>
<td class="nump">71,239<span></span>
</td>
<td class="nump">58,982<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">12<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="num">(1,402)<span></span>
</td>
<td class="num">(939)<span></span>
</td>
<td class="nump">799<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax provision</a></td>
<td class="num">(1,389)<span></span>
</td>
<td class="num">(927)<span></span>
</td>
<td class="nump">809<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision, Total</a></td>
<td class="nump">63,567<span></span>
</td>
<td class="nump">70,312<span></span>
</td>
<td class="nump">59,791<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract', window );"><strong>Income Tax Provision Reconciliation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">U.S. federal income tax at statutory rate</a></td>
<td class="nump">51,957<span></span>
</td>
<td class="nump">56,689<span></span>
</td>
<td class="nump">50,197<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Changes in valuation allowance</a></td>
<td class="num">(1,986)<span></span>
</td>
<td class="num">(256)<span></span>
</td>
<td class="num">(1,462)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Foreign rate differential</a></td>
<td class="nump">10,695<span></span>
</td>
<td class="nump">11,394<span></span>
</td>
<td class="nump">7,941<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCredits', window );">Tax credits</a></td>
<td class="num">(5,209)<span></span>
</td>
<td class="num">(2,425)<span></span>
</td>
<td class="num">(1,368)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxContingencies', window );">Uncertain tax positions, including reserves, settlements and resolutions</a></td>
<td class="nump">6,226<span></span>
</td>
<td class="nump">3,328<span></span>
</td>
<td class="nump">3,214<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Other, net</a></td>
<td class="nump">1,884<span></span>
</td>
<td class="nump">1,582<span></span>
</td>
<td class="nump">1,269<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision, Total</a></td>
<td class="nump">$ 63,567<span></span>
</td>
<td class="nump">$ 70,312<span></span>
</td>
<td class="nump">$ 59,791<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">U.S. statutory tax rates</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Photronics effective tax rates</a></td>
<td class="nump">25.70%<span></span>
</td>
<td class="nump">26.00%<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract', window );"><strong>Deferred Income Tax Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Net operating losses</a></td>
<td class="nump">$ 18,941<span></span>
</td>
<td class="nump">$ 26,377<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves', window );">Reserves not currently deductible</a></td>
<td class="nump">9,892<span></span>
</td>
<td class="nump">8,776<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther', window );">Tax credit carryforwards</a></td>
<td class="nump">12,550<span></span>
</td>
<td class="nump">10,442<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Share-based compensation</a></td>
<td class="nump">3,102<span></span>
</td>
<td class="nump">1,892<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment', window );">Property, plant and equipment</a></td>
<td class="nump">10,710<span></span>
</td>
<td class="nump">9,844<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_plab_DeferredTaxAssetsLeaseLiability', window );">Lease liabilities</a></td>
<td class="nump">4,116<span></span>
</td>
<td class="nump">5,743<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment', window );">Research intangibles</a></td>
<td class="nump">2,721<span></span>
</td>
<td class="nump">0<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_DeferredTaxAssetsGross', window );">Deferred tax assets</a></td>
<td class="nump">62,032<span></span>
</td>
<td class="nump">63,074<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowances</a></td>
<td class="num">(30,633)<span></span>
</td>
<td class="num">(32,619)<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_DeferredTaxAssetsNet', window );">Deferred tax assets net of valuation allowance</a></td>
<td class="nump">31,399<span></span>
</td>
<td class="nump">30,455<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred Income Tax Liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_DeferredTaxLiabilitiesRightOfUseAsset', window );">ROU assets</a></td>
<td class="num">(7,351)<span></span>
</td>
<td class="num">(8,193)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="num">(1,458)<span></span>
</td>
<td class="num">(1,200)<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_DeferredIncomeTaxLiabilities', window );">Deferred income taxes liabilities</a></td>
<td class="num">(8,809)<span></span>
</td>
<td class="num">(9,393)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred income tax assets</a></td>
<td class="nump">22,590<span></span>
</td>
<td class="nump">21,062<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract', window );"><strong>Classification [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income tax assets</a></td>
<td class="nump">23,059<span></span>
</td>
<td class="nump">21,297<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Other liabilities</a></td>
<td class="num">(469)<span></span>
</td>
<td class="num">(235)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred income tax assets</a></td>
<td class="nump">$ 22,590<span></span>
</td>
<td class="nump">$ 21,062<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_plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_DeferredTaxAssetsLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from 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;">plab_DeferredTaxAssetsLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_plab_DeferredTaxLiabilitiesRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from right-of-use assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_DeferredTaxLiabilitiesRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentForeignTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentForeignTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredForeignIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from in-process research and development cost acquired in business combination or from joint venture formation or both.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxCreditCarryforwardsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible tax credit carryforwards, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.1.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationTaxContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(8)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>103
<FILENAME>R88.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343194507472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward', window );"><strong>Unrecognized Tax Benefits [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance at beginning of year before interest and penalties</a></td>
<td class="nump">$ 8,332<span></span>
</td>
<td class="nump">$ 5,204<span></span>
</td>
<td class="nump">$ 3,534<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions', window );">Reductions of tax positions in prior years</a></td>
<td class="nump">86<span></span>
</td>
<td class="nump">209<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions', window );">Additions of tax positions in prior years</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(355)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Additions based on current year tax positions</a></td>
<td class="nump">6,139<span></span>
</td>
<td class="nump">3,361<span></span>
</td>
<td class="nump">2,892<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities', window );">Settlements</a></td>
<td class="num">(835)<span></span>
</td>
<td class="num">(423)<span></span>
</td>
<td class="num">(848)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Lapses of statutes of limitations</a></td>
<td class="num">(30)<span></span>
</td>
<td class="num">(19)<span></span>
</td>
<td class="num">(19)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance at end of year before interest and penalties</a></td>
<td class="nump">13,692<span></span>
</td>
<td class="nump">8,332<span></span>
</td>
<td class="nump">5,204<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Interest and penalties</a></td>
<td class="nump">1,028<span></span>
</td>
<td class="nump">576<span></span>
</td>
<td class="nump">395<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_plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties', window );">Balance at end of year including interest and penalties</a></td>
<td class="nump">14,720<span></span>
</td>
<td class="nump">8,908<span></span>
</td>
<td class="nump">5,599<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxUncertaintiesAbstract', window );"><strong>Income Tax Uncertainties [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate', window );">Unrecognized tax benefits that, if recognized, would impact the effective tax rate</a></td>
<td class="nump">14,720<span></span>
</td>
<td class="nump">8,908<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Accrued interest and penalties related to uncertain tax positions</a></td>
<td class="nump">1,028<span></span>
</td>
<td class="nump">576<span></span>
</td>
<td class="nump">395<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible', window );">Uncertain tax positions that may be resolved over next twelve months</a></td>
<td class="nump">400<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_IncomeTaxesPaidNetAbstract', window );"><strong>Income Tax Payments and Refunds [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaid', window );">Income taxes paid</a></td>
<td class="nump">62,520<span></span>
</td>
<td class="nump">70,362<span></span>
</td>
<td class="nump">37,770<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIncomeTaxRefunds', window );">Income tax refunds received</a></td>
<td class="nump">2,519<span></span>
</td>
<td class="nump">$ 485<span></span>
</td>
<td class="nump">$ 388<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_TaxCreditCarryforwardAxis=us-gaap_ResearchMember', window );">Federal Research and Development [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_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardAmount', window );">Tax credit carryforward amount</a></td>
<td class="nump">$ 6,042<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_TaxCreditCarryforwardAxis=us-gaap_ResearchMember', window );">Federal Research and Development [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2025<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_TaxCreditCarryforwardAxis=us-gaap_ResearchMember', window );">Federal Research and Development [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_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2044<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_TaxCreditCarryforwardAxis=us-gaap_InvestmentCreditMember', window );">Federal 48D credit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardAmount', window );">Tax credit carryforward amount</a></td>
<td class="nump">$ 2,276<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_TaxCreditCarryforwardAxis=us-gaap_InvestmentCreditMember', window );">Federal 48D credit [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2043<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_TaxCreditCarryforwardAxis=us-gaap_InvestmentCreditMember', window );">Federal 48D credit [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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2044<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_TaxCreditCarryforwardAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State [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_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardAmount', window );">Tax credit carryforward amount</a></td>
<td class="nump">$ 5,357<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_TaxCreditCarryforwardAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2025<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_TaxCreditCarryforwardAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State [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_plab_TaxCreditCarryforwardAbstract', window );"><strong>Tax Credit Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxCreditCarryforwardExpirationDate', window );">Expiration period</a></td>
<td class="text">Oct. 31,  2038<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Federal [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_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards amount</a></td>
<td class="nump">$ 55,729<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Federal [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsExpirationDate', window );">Expiration periods</a></td>
<td class="text">Oct. 31,  2030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State [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_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards amount</a></td>
<td class="nump">$ 135,736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsExpirationDate', window );">Expiration periods</a></td>
<td class="text">Oct. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign [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_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards amount</a></td>
<td class="nump">$ 165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsExpirationDate', window );">Expiration periods</a></td>
<td class="text">Oct. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign [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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract', window );"><strong>Operating Loss Carryforward [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsExpirationDate', window );">Expiration periods</a></td>
<td class="text">Oct. 31,  2034<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_plab_TaxCreditCarryforwardAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_TaxCreditCarryforwardAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 gross amount of unrecognized tax benefits, plus accrued penalties and interest, pertaining to uncertain tax positions taken in tax returns as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 reasonably possible in the next twelve months for the unrecognized tax benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxesPaidNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingLossCarryforwardsExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expiration date of each operating loss carryforward included in operating loss carryforward, 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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwardsExpirationDate</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromIncomeTaxRefunds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 tax refund received from tax jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIncomeTaxRefunds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxCreditCarryforwardAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxCreditCarryforwardAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TaxCreditCarryforwardExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expiration date of the tax credit carryforward, 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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxCreditCarryforwardExpirationDate</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-10B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 217<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-217<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_TaxCreditCarryforwardAxis=us-gaap_ResearchMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TaxCreditCarryforwardAxis=us-gaap_ResearchMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxCreditCarryforwardAxis=us-gaap_InvestmentCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TaxCreditCarryforwardAxis=us-gaap_InvestmentCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TaxCreditCarryforwardAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TaxCreditCarryforwardAxis=us-gaap_StateAndLocalJurisdictionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>104
<FILENAME>R89.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343194296512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_EarningsPerShareReconciliationAbstract', window );"><strong>Calculation of Basic and Diluted Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Photronics, Inc. shareholders</a></td>
<td class="nump">$ 130,688<span></span>
</td>
<td class="nump">$ 125,485<span></span>
</td>
<td class="nump">$ 118,786<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DilutiveSecurities', window );">Effect of dilutive securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToParentDiluted', window );">Earnings used for diluted earnings per share</a></td>
<td class="nump">$ 130,688<span></span>
</td>
<td class="nump">$ 125,485<span></span>
</td>
<td class="nump">$ 118,786<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average common shares outstanding [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">61,726<span></span>
</td>
<td class="nump">61,139<span></span>
</td>
<td class="nump">60,559<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract', window );"><strong>Effect of Dilutive Securities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Share-based payment awards (in shares)</a></td>
<td class="nump">665<span></span>
</td>
<td class="nump">616<span></span>
</td>
<td class="nump">630<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_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Potentially dilutive common shares (in shares)</a></td>
<td class="nump">665<span></span>
</td>
<td class="nump">616<span></span>
</td>
<td class="nump">630<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted-average common shares-Diluted (in shares)</a></td>
<td class="nump">62,391<span></span>
</td>
<td class="nump">61,755<span></span>
</td>
<td class="nump">61,189<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net Income attributable to Photronics shareholders - Basic (in dollars per share)</a></td>
<td class="nump">$ 2.12<span></span>
</td>
<td class="nump">$ 2.05<span></span>
</td>
<td class="nump">$ 1.96<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net Income attributable to Photronics shareholders - Diluted (in dollars per share)</a></td>
<td class="nump">$ 2.09<span></span>
</td>
<td class="nump">$ 2.03<span></span>
</td>
<td class="nump">$ 1.94<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_AntidilutiveSecuritiesAbstract', window );"><strong>Antidilutive Securities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Total potentially dilutive shares excluded (in shares)</a></td>
<td class="nump">371<span></span>
</td>
<td class="nump">136<span></span>
</td>
<td class="nump">314<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember', window );">Share-based Payment Awards [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_plab_AntidilutiveSecuritiesAbstract', window );"><strong>Antidilutive Securities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Total potentially dilutive shares excluded (in shares)</a></td>
<td class="nump">371<span></span>
</td>
<td class="nump">136<span></span>
</td>
<td class="nump">314<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_AntidilutiveSecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_AntidilutiveSecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DilutiveSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) to net income used for calculating diluted earnings per share (EPS), resulting from the assumed exercise stock options, restrictive stock units (RSUs), convertible preferred stock of an employee stock ownership plan (ESOP), and other dilutive convertible securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DilutiveSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EarningsPerShareReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480454/718-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAttributableToParentDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, and includes adjustments resulting from the assumption that dilutive convertible securities were converted, options or warrants were exercised, or that other shares were issued upon the satisfaction of certain conditions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToParentDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>105
<FILENAME>R90.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343185558592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Oct. 31, 2024 </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_plab_CommitmentAndContingenciesAbstract', window );"><strong>Commitment and Contingencies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_MinimumRemainingTermOfPlantAndEquipment', window );">Minimum remaining term of plant and equipment</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationFiscalYearMaturityAbstract', window );"><strong>Unrecognized Commitments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInNextTwelveMonths', window );">2025</a></td>
<td class="nump">$ 70,992<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInSecondYear', window );">2026</a></td>
<td class="nump">3,052<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInThirdYear', window );">2027</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInFourthYear', window );">2028</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInFifthYear', window );">2029</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueAfterFifthYear', window );">Thereafter</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligation', window );">Total</a></td>
<td class="nump">$ 74,046<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_CommitmentAndContingenciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_CommitmentAndContingenciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_MinimumRemainingTermOfPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 term physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_MinimumRemainingTermOfPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_ContractualObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation, including, but not limited to, long-term debt, lease obligation, purchase obligation, and other commitments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueAfterFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueAfterFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueInFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueInFourthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInFourthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueInSecondYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInSecondYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationDueInThirdYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of contractual obligation 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInThirdYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ContractualObligationFiscalYearMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractualObligationFiscalYearMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>106
<FILENAME>R91.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193756576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract', window );"><strong>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossTax', window );">Other comprehensive (loss) income, tax</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="nump">975,008<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="nump">1,120,864<span></span>
</td>
<td class="nump">975,008<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_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember', window );">Accumulated Other Comprehensive Income (Loss) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(88,734)<span></span>
</td>
<td class="num">(98,456)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="num">(86,319)<span></span>
</td>
<td class="num">(88,734)<span></span>
</td>
<td class="num">(98,456)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(88,044)<span></span>
</td>
<td class="num">(97,790)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="num">(85,587)<span></span>
</td>
<td class="num">(88,044)<span></span>
</td>
<td class="num">(97,790)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeOtherMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance</a></td>
<td class="num">(690)<span></span>
</td>
<td class="num">(666)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance</a></td>
<td class="num">(732)<span></span>
</td>
<td class="num">(690)<span></span>
</td>
<td class="num">$ (666)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember', window );">AOCI Including Portion Attributable to Noncontrolling Interest [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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="nump">8,549<span></span>
</td>
<td class="nump">5,612<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_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember', window );">Foreign Currency Translation Adjustments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="nump">8,630<span></span>
</td>
<td class="nump">5,615<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_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Other comprehensive income (loss)</a></td>
<td class="num">(81)<span></span>
</td>
<td class="num">(3)<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_StatementEquityComponentsAxis=us-gaap_AociAttributableToNoncontrollingInterestMember', window );">AOCI Attributable to Noncontrolling Interest [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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest', window );">Other comprehensive income (loss) attributable to noncontrolling interests</a></td>
<td class="num">(6,134)<span></span>
</td>
<td class="nump">4,110<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_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember', window );">Foreign Currency Translation Adjustments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest', window );">Other comprehensive income (loss) attributable to noncontrolling interests</a></td>
<td class="num">(6,173)<span></span>
</td>
<td class="nump">4,131<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>Changes in Accumulated Other Comprehensive Income [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest', window );">Other comprehensive income (loss) attributable to noncontrolling interests</a></td>
<td class="nump">$ 39<span></span>
</td>
<td class="num">$ (21)<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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax, before reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482739/220-10-55-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of other comprehensive income (loss) attributable to noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) allocated to other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedOtherComprehensiveIncomeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AociAttributableToNoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AociAttributableToNoncontrollingInterestMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>107
<FILENAME>R92.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193245952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>RISKS AND CONCENTRATIONS (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">$ 745,257<span></span>
</td>
<td class="nump">$ 716,135<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="nump">1,480,759<span></span>
</td>
<td class="nump">1,275,609<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CN', window );">China [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_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">256,072<span></span>
</td>
<td class="nump">249,357<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="nump">379,460<span></span>
</td>
<td class="nump">317,409<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=plab_EuropeAndOtherMember', window );">Europe and Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">7,010<span></span>
</td>
<td class="nump">7,294<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="num">(420)<span></span>
</td>
<td class="num">(2,175)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">144,634<span></span>
</td>
<td class="nump">140,733<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="nump">217,890<span></span>
</td>
<td class="nump">188,712<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_KR', window );">Korea [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_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">123,631<span></span>
</td>
<td class="nump">119,438<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="nump">315,597<span></span>
</td>
<td class="nump">281,941<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_TW', window );">Taiwan [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_ConcentrationRisksTypesNoConcentrationPercentageAbstract', window );"><strong>Geographical Areas [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived Assets</a></td>
<td class="nump">213,910<span></span>
</td>
<td class="nump">199,313<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNet', window );">Net Assets</a></td>
<td class="nump">$ 568,232<span></span>
</td>
<td class="nump">$ 489,722<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer A [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_plab_CustomerAccountedAbstract', window );"><strong>Customer Account [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer's percentage of net accounts receivable/revenue</a></td>
<td class="nump">19.20%<span></span>
</td>
<td class="nump">21.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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer B [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_plab_CustomerAccountedAbstract', window );"><strong>Customer Account [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer's percentage of net accounts receivable/revenue</a></td>
<td class="nump">14.60%<span></span>
</td>
<td class="nump">10.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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Revenue [Member] | Customer Concentration Risk [Member] | Customer A [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_plab_CustomerAccountedAbstract', window );"><strong>Customer Account [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer's percentage of net accounts receivable/revenue</a></td>
<td class="nump">15.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Revenue [Member] | Customer Concentration Risk [Member] | Customer B [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_plab_CustomerAccountedAbstract', window );"><strong>Customer Account [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer's percentage of net accounts receivable/revenue</a></td>
<td class="nump">12.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">11.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Revenue [Member] | Customer Concentration Risk [Member] | Customer C [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_plab_CustomerAccountedAbstract', window );"><strong>Customer Account [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer's percentage of net accounts receivable/revenue</a></td>
<td class="nump">9.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_CustomerAccountedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_CustomerAccountedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net assets (liabilities).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 30<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479910/205-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-20<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ConcentrationRisksTypesNoConcentrationPercentageAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRisksTypesNoConcentrationPercentageAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=plab_EuropeAndOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_EuropeAndOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_KR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_KR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_TW">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TW</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=plab_CustomerAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_CustomerAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=plab_CustomerBMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_CustomerBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=plab_CustomerCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_CustomerCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<FILENAME>R93.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343299883120">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>RELATED PARTY TRANSACTIONS (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_plab_RelatedPartyAgreementAbstract', window );"><strong>Related Party Agreement [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">$ 866,946<span></span>
</td>
<td class="nump">$ 892,076<span></span>
</td>
<td class="nump">$ 824,549<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">200,830<span></span>
</td>
<td class="nump">194,927<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=plab_MajorCustomer1Member', window );">Customer One [Member]</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_RelatedPartyAgreementAbstract', window );"><strong>Related Party Agreement [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">127,000<span></span>
</td>
<td class="nump">126,500<span></span>
</td>
<td class="nump">$ 119,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_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 38,800<span></span>
</td>
<td class="nump">$ 41,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">This table disaggregates revenue by the location in which it was earned.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_plab_RelatedPartyAgreementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">plab_RelatedPartyAgreementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=plab_MajorCustomer1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=plab_MajorCustomer1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>109
<FILENAME>R94.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343187358032">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>FAIR VALUE MEASUREMENTS (Details) - Fair Value, Recurring [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">$ 78,506<span></span>
</td>
<td class="nump">$ 32,102<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Time Deposits [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Money Market Funds [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">36,322<span></span>
</td>
<td class="nump">19,187<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">U.S. Government Securities [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">12,915<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 1 [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">36,322<span></span>
</td>
<td class="nump">32,102<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 1 [Member] | Time Deposits [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 1 [Member] | Money Market Funds [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">36,322<span></span>
</td>
<td class="nump">19,187<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 1 [Member] | U.S. Government Securities [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">12,915<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 [Member] | Time Deposits [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">42,184<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 [Member] | Money Market Funds [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 2 [Member] | U.S. Government Securities [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 3 [Member] | Time Deposits [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 3 [Member] | Money Market Funds [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Level 3 [Member] | U.S. Government Securities [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_AssetsFairValueDisclosureAbstract', window );"><strong>Fair Value, Assets [Abstract]</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_AssetsFairValueDisclosure', window );">Assets, fair value disclosure</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AssetsFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CashAndCashEquivalentsAxis=us-gaap_BankTimeDepositsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_BankTimeDepositsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FinancialInstrumentAxis=us-gaap_USTreasuryAndGovernmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinancialInstrumentAxis=us-gaap_USTreasuryAndGovernmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>110
<FILENAME>R95.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.4</span><table class="report" border="0" cellspacing="2" id="idm46343193376016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE REPURCHASE PROGRAMS (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1">38 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2024</div></th>
<th class="th"><div>Oct. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
<th class="th"><div>Oct. 31, 2023</div></th>
<th class="th"><div>Aug. 28, 2024</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract', window );"><strong>Share Repurchase Program [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Cost of shares repurchased</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,522<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ShareRepurchaseProgramAxis=plab_September2020AnnouncedProgramMember', window );">September 2020 Announced Program [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract', window );"><strong>Share Repurchase Program [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchased authorized amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_plab_StockRepurchaseProgramCommencementDate', window );">Stock repurchase program - commencement date</a></td>
<td class="text">Sep. 16,  2020<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StockRepurchaseProgramExpirationDate', window );">Stock repurchase program - expiration and termination date</a></td>
<td class="text">Sep. 15,  2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Amount remaining under authorization for purchase of additional shares</a></td>
<td class="nump">$ 31,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ShareRepurchaseProgramAxis=plab_ShareRepurchaseProgramsMember', window );">Share Repurchase Programs [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract', window );"><strong>Share Repurchase Program [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchased authorized amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,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_TreasuryStockSharesRetired', window );">Number of shares repurchased (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">187<span></span>
</td>
<td class="nump">5,800<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_TreasuryStockValueAcquiredCostMethod', window );">Cost of shares repurchased</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 2,522<span></span>
</td>
<td class="nump">$ 68,300<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_TreasuryStockAcquiredAverageCostPerShare', window );">Average price paid per share (in dollars per share)</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 13.43<span></span>
</td>
<td class="nump">$ 11.7<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_TreasuryStockSharesAcquired', window );">Number of additional shares repurchased (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_plab_StockRepurchaseProgramCommencementDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 authorized share repurchase program commenced, in CCYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">plab_StockRepurchaseProgramCommencementDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>plab_</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_srt_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StockRepurchaseProgramExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expiration date for purchase of share under share repurchase plan, in YYYY-MM-DD format. Includes, but is not limited to, repurchase of stock and unit of ownership.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StockRepurchaseProgramExpirationDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli: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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockAcquiredAverageCostPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost of shares repurchased divided by the total number of shares 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> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockAcquiredAverageCostPerShare</td>
</tr>
<tr>
<td style="padding-right: 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_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockSharesRetired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and preferred stock retired from treasury during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesRetired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ShareRepurchaseProgramAxis=plab_September2020AnnouncedProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=plab_September2020AnnouncedProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareRepurchaseProgramAxis=plab_ShareRepurchaseProgramsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=plab_ShareRepurchaseProgramsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>EXCEL
<SEQUENCE>111
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( 'FLDED'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    " !YK))944?OF>\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+;
M2@,Q$(9?17*_.WM0T;#-C:57"H(%Q;N03-O@YD RLMNW=S>V6T0?P,O,_/GF
M&YA.!:Y\Q.?H T8RF*Y&V[O$55BQ U'@ $D=T,I43@DW-7<^6DG3,^XA2/4A
M]PA-5=V"19):DH096(2%R$2G%5<1)?EXPFNUX,-G[#-,*\ >+3I*4)<U,#%/
M#,>Q[^ "F&&$T:;O NJ%F*M_8G,'V"DY)K.DAF$HAS;GIAUJ>'MZ?,GK%L8E
MDD[A]"L93L> *W:>_-H^K+<;)IJJN2[JIJCOMU7#VQO>WKW/KC_\+L+6:[,S
M_]CX+"@Z^'47X@M02P,$%     @ >:R269E<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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
M#[^+G4.AM9?)4C=_T<-.%H]0MM%&5CME0% 5=?N??]LMQ($""7H4Z$Z!GJO
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
MLC).61DGTW/W52;EVCW"0JAB3)K\Y *]9@&] "<BP3[,#+7"!/ -&-['#_;
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
MZ!; /K^K*OITT/Z,Y?A;K:O_ 5!+ P04    " !YK))9-'BUJ&D(  !T)P
M&    'AL+W=O<FMS:&5E=',O<VAE970X+GAM;*U:?X_;N!']*H1[*%H@CD52
M/[>[!A(K=SW@KEED>^W?7(E>JY%%'T5[L_WT1TI>RR)'C+<U$,2V]G'$-QS.
M/(YT^RSDUW;#N4+?MG73WLTV2NUN%HNVV/ M:]^+'6_T7]9";IG2/^73HMU)
MSLINT+9>D""(%UM6-;/E;7?M7BYOQ5[55</O)6KWVRV3+Q]Y+9[O9GCV>N%+
M];11YL)B>;MC3_R!J]]V]U+_6IRLE-66-VTE&B3Y^F[V =_D-#,#.L2_*O[<
MGGU'ALJC$%_-CY_+NUE@9L1K7BAC@NF/ U_QNC:6]#Q^/QJ=G>YI!IY_?[7^
M8T=>DWED+5^)^M]5J39WLW2&2KYF^UI]$<]_YT="D;%7B+KM_D?/1VPP0\6^
M56)['*QGL*V:_I-].SKB; ".)P:0XP!B#P@G!M#C 'KI@/ X(.P\TU/I_) S
MQ9:W4CPC:=#:FOG2.;,;K>E7C5GW!R7U7RL]3BU7HFE%795,\1(]*/VA%U6U
M2*S1BK4;]*,.C!;-T6\/.?K+#W]%/Z"J0?_<B'W+FK*]72@]!V-I41SO][&_
M'YFX'R;H5]&H38L^-24OQP86>O(G!N25P4?BM?BY4.\1Q>\0"4@(3&AU^7 *
M#,\O'TX\;.AI/6AGCTZMAW'ZNG/Z6HHMTAM<,E4U3_T.J53%VQO([;W9$#9K
MLL=-NV,%OYOI]-!R>>"SY9__A./@;Y#+KFDLOY*QD3O#DSM#G_7E/W3FK)I"
M;#GDLWYLU(TU"?*PQ"E-P_1V<3CW!@#+LIB&8U@.P)*,A.0$&S&(3@PB;T!\
M*/^CLT"_*970J;8035'5'#4G:N:Z^568V-E)<:CTSD*/+Y<'3W3-X+FFL?Q*
MQD:NCT^NC[W!DW-MM*A87Z":$K&MD*KZ;W]!9TCM:^UA]?(.[6K6J [#?]]7
M.[-<D)_[^\5G(9*2D%(KW@!4$"86*G=1298E&(ZVY$0Y\5+^8#&L&L6:I^I1
MQQMK6Z[ C)\X,Z$)L3@!F-C"Y  FRF ^Z8E/ZN7SL&&2SXTP*)'>*EHMM1TW
MB$;JW![3- LL(BXJ#0)L,7%!,0U2F$IVHI)])QK77$K-XW73LV\<7([,N?G<
M$+%X *B,)!8/%Y0&$RN"@T%Q!/X2M]$AQ5LC)/J8>H?JBCU6=9>?WG6[2*@-
MEV"J.AJ_4JZZJK7\6M;&CCV3<MB_>8M"[$V=T%F+5P>F=RWH0>PN/8E"*X97
M "P,2&Q%"&0LPN0LIXW)D($,\9+YN3GH)"ID!0?Y<?3HOC&.0IN$"].3<T@
MQDA IR)]T'+8JVV6GTT4:Q6OMZVI#I,)]&AFE"^(K4( 4!;'D4W%16$2A!-,
M!AF%_3KJ%%H[]F+B2N_2HI![G8W.MNZP<T&2(9!QXM N?A",9+;6 E!Q$,7Q
M!,]!;&&OH.CTXD4R"F08.9,B,0Y#)RA=' T(3IRP!.PE$4Z3"9:#KL'QI8>,
M?=M5%/WOP-M+I"+V:J8WY]]K6LNO96WLUD$[8;]XNM_+8J.E1OL_:4/LRA]=
MMX,LM*44#,0D<W(!!#2Y>4*)X$%58;^L&C%M-UHSSA67VV,4=8<5D**KB^8X
M"*+(R74 D 0XLQ4CA*-I&DWENT%K8;_8NI>BX+P\'L*W3.UEG^+>QM?53PE)
M[?*S F!A$E%;C &P .9)!BU&O))D^9,X<-D8 D96ZH_J .>VHYU1+B+$%I40
M*B+VJ@$HJFOW!)=!_A"__!D%Y44'%P*(%T<H0R",[<6!4"28XC2H(.)709^G
MJBEQ)4ODS-S%!/:T70B9FO0@>XA?]IR*J*^X@*1<\3+'41S:*F<% @,M_^P4
M" +#)(DF:B@9%!$)WUI#UU7#FN*"&DJ\8NNM-?2JUO)K61N[=1!@Q"_ OG"M
M,$\MZ)(_@K62N,IH'L?$/L) ,)R&-+.C!#(7A>%4>AV$%O%WD$8I24G.VKU\
M0:T2Q5>0EMO3L=L/WX?D &0^RL)C,H.\(7YYLQ*-DM7CWO1/CH6Q$4UAKHJZ
M-F&ODR[703&1;%TUXI#[+B0'("3,LJF<-2@:\AU%,RKX[5G;B$EI^A6319X
M?:,,VS4>0A&[TYP#J"@))\ZA9% SQ*]F3$+6-5#5P\,=LTRR*LQ3GRX<$7MF
M$GZ@0X!6D3ZO.#D9[#L%3O&'8.%4WY(.2H;ZE8Q3=*!L##XX<=7(/$FH'9L0
M3.>2S&[+0CB:QNG$(M)!WE"_O/FT7O.B7SS^K>AZ:$@?2SDJCOTTT70.>->[
MP9PU#JPVZ]VWU,Y6W ! 5[@BAF"[*;@"4',2I_9.A6!A'.")/$0'343]FNCX
M3,=D4VX6^O\E[4J@+*/V87P%P'"2A?;1)0=P(4G(U/*?/1?TBZK5Y2P14^B1
M/U5-8Z)?Q\L+9Z"(I*XZB@*<QLZ*NSA*2!C8=13 D20[#XTQ^4%L47_[Z8WD
MN>E#>6A#S2.=C>U6%("#W),#.,L]8]J#&*)^,?0+;]L;\Z#<K.,EH0PVC.S#
M-82*$ELY@[8FPWA01-2OB#K9;);-7LQ+ULT5-E&6AJE=B0"<E@C$Z1X .(H]
MX3HH)9IXSP8/^]VNK[6L1F75%K70PH\;;EHQS3OJ5=._M*/%%/P\WRO&WOQ
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
MWB[:9,D3FJ+/_:KXE[ 99[.U%1!'Q%D2HIK 3T%_];7]S&,%?:1)[F#VRX+
MYN@[YV!E)><$%BW /P<3X$6\(CQSQZ%LCX>W)-RL-BW@OL8J"T-, BP^Z98G
M:GTQ05+6Z,K0#0@WE!-V#;YT7W3XP02)=)5%WS-(Y0F'6V(BB^VV[^[8C2AG
MEP7]CSPQ(SMDE.>@HA].X!4<\UFUEIDX(^+ZT.^8EGD6<8UE;(^+,I=HJ;\Y
MFS^G2(%0#FP/,80N?!<N]"91A/>LT&H'A#'9&">\IP!R07>Y+ ^/.KKX=/:0
M'9M%NM_<>XWEF;":R9MMF CH%  .\8XP;,/&BJP+W;LBE5"["M7CU)QU,$H9
M>!DI6 P 1/%4B@73+(KVLT".BORLY6B7%(X4@LCX[ REX+6.U*WE(.C:E+J$
MTRBK1##'.L0Q$;N_0%+--GY)CIN$[45VDO]::&P+G>#5W==[@3=8=S"; \Q=
M3ZI' =]!0Y2=9&[H&5ZI6& \ &8,-R@6/KR:$-QN$#TEUKIX-);>/,0.R-+<
MDY&9!4+W[79V'=0@XDA$IQ\'\V:R'AKNEXY,@2H55HMQ9,SJ<]:Q26$6 2;,
MY]@R7L1X'$<$*7?%3BIB'T5OU4$&/<39*>:QM_#1H),C"77L)//F2.D1W-IM
MU<;MSV-@X(P8@MW]/72*(N4*,7,J_!)[J',X$E0;3:AG)[O;LE6[-<V-EU(
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
MS#<U@72&*0NYAM?83M-^XAU<BDHMKB[G5S,,D^3><\^G[%(LS4=NE9%,&U\
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
M_8Z4K#B9&^2+11[OGGONC>;Q5JIONJ;4P'W#A3X9U<9LWD\FNJQI0_18;JC
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
M\%1PPR6\S:1& MB?*V77$U2P>>U-_@502P,$%     @ >:R26:U(R G8"0
M<!D  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&ULM5EK;]RX%?VN7T',
MIHNDT,B2YJ5); ..X^P&:&(C3A,413]P),X,&TE4),J/_?4]EQ3E>7J[6Q2&
MK1=Y>5_GW$OZ]%[5WYNU$)H]%'G9G W66E>O3TZ:="T*W@2J$B6^+%5=<(W'
M>G725+7@F9E4Y"=Q&$Y/"B[+P?FI>7=3GY^J5N>R%#<U:]JBX/7C6Y&K^[-!
M-' O/LO56M.+D_/3BJ_$K=!_KVYJ/)WT4C)9B+*1JF2U6)X-+J+7;\<TW@SX
M*L5]LW'/R)*%4M_IX4-V-@A)(9&+5),$CLN=N!1Y3H*@QH].YJ!?DB9NWCOI
M[XWML&7!&W&I\F\RT^NS03)@F5CR-M>?U?VOHK-G0O)2E3?F+[NW8T?3 4O;
M1JNBFPP-"EG:*W_H_+ Q(0F/3(B[";'1VRYDM'S'-3\_K=4]JVDTI-&-,=7,
MAG*RI*#<ZAI?)>;I\]M?+SY?#=]>W%Z]8Y?7'V^N/MU>?/EP_>GT1$,ZC3E)
M.TEOK:3XB*0H9A]5J=<-NRHSD6T+.(%:O6ZQT^UM_*S$ZU0';!3Y+ [C\3/R
M1KVM(R-O] =M9?^\6#2Z1H+\ZY#95NCXL% "S>NFXJDX&P 5C:COQ.#\YY^B
M:?CF&97'O<KCYZ3_H? \+^G3]9<KAA@-V89,;\L-'TKVD=?I&OZ.ICYKUKP6
M:Y5GHFX\7E6UNA,9TVO!+E51\?+QYY^2.)J]:9"G=2U*S<2/5NI')LL43P ;
M2S$0 .8&@%7.2_:2)L7A&Q)S@Q?F,7KSRF<MLJ9F]VL)!9XD  #I=Z8JDM#X
MK%3E\$?+<[F4T&7GHWU<U;S4[FE(B,T8O^=UAG<(D*YEJMW<_3=00_:S&5DM
M4FGUKPG@C>]5HC9D"!W=Z,U7G6!>9DS!RMII6;.4-^M.%4#XD2V$559D ;LE
M9S=,*WHKFZ:%0M8CSE-N"F_U6M7R-S*KI$'=:!,NZ++UB-E<LS6')Q="$(WR
M%$&J,6#QN!E+=NV"3Z$'X$8P03-8AU5*>)P5H!A9KIA:;F6&[Y&4S3<TXF:M
M=*U*F4*A#V4:^*Q/( Y*S_"KC;6]=;A'U*%?(\S+LBT6L-ZM!C7NN,SY(A<,
MKC96&G?##,SF628I2-!3E<(K9)Y3R)Q/* YB\>A6(#-ZK8]*WG'_LE8%!K0U
M<]*A\I)RM'L.*,;P&<W(9(.53-K  GJS!04\%%)K(=Z8;W=(PLZUV^G!TQ3U
MJ^8F1;YTFL"7386B9AQM\0(S6*'P9]GF^2.J$E:7"PHR55WD9ZW6<D'!7+:U
M2<IN'6/40M#B6TE7U1+&$&(;N[ V_C'BF.$YQ,^3I>T*C)GE06HP+NY0N.4"
M\4#W\#[YG&;J=2W(BD8C2PG^<&Z3(J"/@M=-X/T#%UM:/!0&1<GA:L/NB]'N
MB]B[LLM!=*5J0KLL7WN7M!B<N%(*OFB0OMX++_9GX1C7R(\G<UR3:>+=HFN
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
M;?A19+HNVZHU>%K=RZ+%>EB"+%M7#:1H69!N2+#>XJT49_ R20>JM[!LH]C
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
M#C2GUWK<PHU!1[;4*?[5_OB=+!BH93.R"\LP;G8'3\!:X(&Q9 HY)@NN["]
MW\*0.SZ0CPC?: 41*X=7EN;!^R^'#+8=_F-"; LBK65$2B&8@2W%1!1.AGE#
MY>YXI%5M5]34]<.,6MFI[P3, Z]'7CM,PYBH410P'4LC:J,_RC5U&-#*DGY[
M7>B5;CKT!8.C6<S<[.?(6512OLE-P@_1Z@>=KZRG/CSQI.L%J8@1[F$6/[78
MMLM_8KT7PH^0Y1XNP,J]%-\Q*%>V#\U&YS];I-6E?=E%Y(^B'CCW1$_3UUK.
MBDY=^R[-GK9^0T#>/IDL1%Y<H1=B^X#;$97ND)7;KZ^.S:D=80=P@,(!SLE\
M7K>6,^QS6 >XS,OVV\FGG-@;"G7LSDF!^M+>+6VR(F)LRMCR=Z]J R<^TPA2
M>9NI[6WV(B8_H%24="=74"ZG4&_7'6/=@D"?1S;]156/"L5SX6R+8'_TW?%B
MTU'$G?+XE-Z'V]"3SWK45C-J4SM=^SU]:9?K',!G4?>4V_ 9ZU"J+U!FHS *
M,LHOU@"9+[Q))%:@T<R6KX83K,[G1CWKZ8XN+^IJ)91FD ?DS*K&;E_QAS#
ME1EB1SC,J.V,7B-LV>/H%8+=)81*K9L'L!/9\_(!Z G'76CY*S3J6(U+VEFN
M0_-W#AV8Q5FP'#J),<T%Q<TF.V?I\F%[]'>E%J"RYNDCX)WCWK74>7=B:*<]
M/@]&5BI]S^<Q=7\0_%\_O?WP6"5B#6@@.;GIP'%*Y2=,W"3QQ@>4O=*#DF@W
MW=C/\!VE,3[#-!7[WEL>CUXEKU1]QR_,C7TA9=\J#Z/#._D3^RIZ^[A]H?])
MUG=$W@NUP%1ODL0'HK8OR>V/IEKSBVG$8E.M^'*I)"@0/8#[BZIJ^A^TP/ _
M%=[^!U!+ P04    " !YK))9PC,^\"($  #M"0  &0   'AL+W=O<FMS:&5E
M=',O<VAE970R,RYX;6R=5EMOXC@4?L^O.,J,5KL2)3=(@06D=H;=Z<-T4-O9
MT6JU#R8Y$*M.G+&=TO[[/7: 0@7,:(5$?#GG\W>N]G@MU:,N$ T\EZ+2$[\P
MIAX%@<X*+)GNRAHKVEE*53)#4[4*=*V0Y4ZI%$$<AFE0,E[YT[%;FZOI6#9&
M\ KG"G13EDR]7*.0ZXD?^=N%.[XJC%T(IN.:K? >S==ZKF@6[%!R7F*EN:Q
MX7+B7T6CZYZ5=P)_<5SKO3%82Q92/MK)33[Q0TL(!6;&(C#Z/.$'%,("$8WO
M&TQ_=Z15W!]OT?]PMI,M"Z;Q@Q3?>&Z*B3_P(<<E:X2YD^M/N+&G;_$R*;3[
MAW4KFX0^9(TVLMPH$X.25^V7/6_\L*<P.*40;Q1BQ[L]R+'\R R;CI5<@[+2
MA&8'SE2G3>1X98-R;Q3M<M(ST]G5W>W-[9_W,)_=P?VGJ[O9.#"$:W>#;(-Q
MW6+$)S"B&#[+RA0:9E6.^2% 0(1VK.(MJ^OX+.*7S'0AB3H0AW'O#%ZRLS)Q
M>,E/6PG_7"VT4904_QXSN(7K'8>SA3+2-<MPXE,E:%1/Z$]_>1>EX>]GR/9V
M9'OGT'\R)&<QCC.\_?(P@Z@/%W#$'P\%0L9$U@CFRD4N;;;S#%B50\Y%8S '
M9*KBU4I#C538!5,(G";VA,KN+VR1=[V_2:[-!8\B*1<D3,$\.?Z55V *V6@Z
M2G< GS.L#5##V3LFI^3^S;/I8/\2^Q=[M]2T>)7)$H$9H_BB,6PA$(R$>2&-
MDA7/"/"FRKHM3"%%CDI[[[TH"3OI8&!'<;_3&_3M*!IT+@>I-ULNJ6=8#SB[
MJ6N QJQ1W'#4Y#WZ>;.M)QI-=ENNIWWT@^.^N<Z!^05[0D6-$,B@DB+@=#50
M)]6&/$.8(^_:AL1+H\YEG-I/E R]-.ST^\/SK$?>O46[L TLAYJ]4%\UP-9,
MY=I+TSYA$5X2>G-I:(<S(5Y><0X('8B?YW[QL?6)E\:=9!@YWOV^XST8OKIP
MYZB1B^C-CR)Z$$N*1NN4]U[<C6+W"9U[N\/T_^%M63NH8?M)6L2>JY,6PR4[
M^=AH&W]34 [C?K1@_=8Y^F0,2)<94J!,I_0736Z32LG281Z6I7>F&!>8,4I(
MJ\45(:'*.$UKQ3,'C&B!+>:6$MW$C^2C)R8:M+GCSCO(/YO;=I5.X3('J3K0
M4&DK8'4M>+;K%E;&T+M -^H%Z-[*'J%$*NN\8[=>6N,D#=7:<LK1H*(+S?*1
M1)SZC.';C#O50MQ]\'8A>;L0M\D.1Y,]N8RH&E,OB7K>@S1,0'TLY3?&;X.Q
MKP;'>GRP=P67J%;NH:')E4UEVMMXM[I[RURU5_BK>/L0^LS4BE<:!"Y)->Q>
M]GU0[>.BG1A9NPM](0T]#]RPH/<8*BM ^TM)%FTF]H#="V_Z'U!+ P04
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
M=DA8V-$5!/V9%5LPR"+\8 ?[!=T!L! HBB)G!CCS/F8CMG3,-K/]<Y'\ON]
M?MNL7 U3[2(@B71W=E2QMG\R\+?-.8Z<*F^J#+=$O!9@P\,1K)5)5(6NC6)M
MP^:N[%J5U,JE3FKJ)12%VO4<1^V&KZFK=Z?J^Y7ICO"F$SV>E?[1K,A1FZ]R
M'(5H1CA^;*/.E5,SW DM?"KMK5!;S2OX3"[39<!T.4C',;UR_DGB_W1O<.DL
M>!<PUGX^.;G"P<&][[QP,O7'LQ!?T6SAQ],QR>*%'TUF) MF?CQ>>,TUQ7ES
M2=W.F_EC),?+.!Q[WV,0+F+O9>@'LPF&GTMWO%U;(@K9%?O3*$9%SOSY8HSQ
MV)]%D1?,Y_X,6?8!1<&1;A%6!3 X\2>+F1<$ !/-O7 >^(LX\&ZXQ!$/)9&_
M@.')=.Z'48AJ!](@\N+YPI^%Y,4LGOBAPQ[X\1RF)@N2!E,_B"9.&LXF_G2\
M8,?NU:/>$PC9OG4//<HU%''S&MI+]V_)9?.$NE_>/$0_<KV5=%:+#;:.A[/)
M !W</>Z:@565>U"ME441N,\,[5YH6H#YC<+%N!V0@?T+^^PO4$L#!!0    (
M 'FLDEFYI7Y13@,  %0'   9    >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM
M;)55T6[;.@Q][U<0WK"GS(Z=M,VZ)$#:=5B!K2W2;!<7PQYDFXZ%R9(GR4G[
M]Y>2'=>[Z +L)1%I\O"0(JGY7NF?ID2T\%@):19!:6U]$44F*[%B)E0U2OI2
M*%TQ2Z+>1J;6R'+O5(DH&8_/HHIQ&2SG7G>OEW/56,$EWFLP354Q_72)0NT7
M01P<%&N^+:U31,MYS;;X@/9K?:])BGJ4G%<H#5<2-!:+8!5?7$Z=O3?XQG%O
M!F=PF:1*_73"3;X(QHX0"LRL0V#TM\,K%,(!$8U?'6;0AW2.P_,!_://G7))
MF<$K)?[AN2T7P2R ' O6"+M6^T_8Y7/J\#(EC/^%?6L[(>.L,595G3,QJ+AL
M_]EC5X>!PVS\!X>D<T@\[S:09_F!6;:<:[4'[:P)S1U\JMZ;R''I+N7!:OK*
MR<\NU]>?5YOK#W"_6F_^A<UZ=?NPNMK<W-T^S"-+^,XJRCJLRQ8K^0-6G, 7
M)6UIX%KFF/\.$!&QGEUR8'>9'$6\RVP(DW@$R3B9'L&;]-E./-[DK[.%[ZO4
M6$U-\N.EQ%O8Z<NP;G N3,TR7 0T&0;U#H/EFU?QV?C]$=+3GO3T&/I?7M%Q
MK-N[S37$[^ M'"G%7:,A*SD6@(^8-6YL0!4%SU #-S2*@EG,P2I@$KC,^8[G
M#1-T! :U,MS/FRJ -;94FMLG8!:4="A@2X0K5=5,/KUY-4OB\_<&!--;-+;K
M=]0FA$V))YT9!<R4IH:BPPYE@U!H51$0<3EX..37<7(>CFE(A*#X(R>?A:<'
MF;CFI(K?#4V(L>LLWU^3D3>A4S(ZH5NLT2\,\13"RCA\:D:54JA#/[;V_],2
MRB!#*%E.BR=3C;2N<!GR'4N%+\3KR2R<_<YN&C_S'<&0P^B%G'V1^D@I"D[E
M,61#Q78<+.K*'$I.K2T-:S=ACB;3/*6"LE31W>Z9 8E;9;F_5W)GNGJ^')1;
M6WJ">]0(4I'*&"C83FF?C%4GPYR)@.R"#]54!)%305PSI9:>"PKEDVIDWU$E
MUSG43%N.)GQI=*+!IJ,2;/T^-^ +W"Z]7ML_&:MV4SZ;M^_-%VHZ+EU^!;F.
MP_/3 '2[PUO!JMKOS519JK<_EO3LH78&]+U0RAX$%Z!_2)?_ 5!+ P04
M" !YK))9UD4&^D\$  !&"@  &0   'AL+W=O<FMS:&5E=',O<VAE970R."YX
M;6R55MMNVS@0??=7$&JQV ".94O.I5G;@)-UNP6:-HB3[L-B'VAI9+&12(6D
M[.;O=X:B'*5UT@T"A[>9,V<N''&R5?K.Y "6?2\+::9!;FUU%H8FR:'D9J J
MD'B2*5URBTN]#DVE@:=.J2S":#@\#DLN9#";N+TK/9NHVA9"PI5FIBY+KA_.
MH5#;:3 *VHUKL<XM;82S2<77L 1[6UUI7(4[E%24((U0DFG(IL%\='8^)GDG
M\%7 UG3FC#Q9*75'BX_I-!@2(2@@L83 <=C !10% 2&->X\9[$R28G?>HK]W
MOJ,O*V[@0A5_B]3FT^ T8"EDO"[LM=K^!=Z?(\)+5&'<?[9M9..C@"6UL:KT
MRLB@%+(9^7<?AX["Z? 9A<@K1(YW8\BQ_)-;/IMHM66:I!&-)LY5IXWDA*2D
M+*W&4X%Z=O9^_O&:?9U_NEVPR\5\>7N]N%Q\OEE.0HO@)!(F'NB\ 8J> 1I%
M[%))FQNVD"FD3P%"9+6C%K74SJ,7$;\D=L#B49]%PVC\ EZ\<S5V>/'K7&7_
MS%?&:BR/?_=YW6".]V/2E3DS%4]@&N"=,* W$,Q^>S,Z'O[Q N/QCO'X)?37
M).=%H/TT/W^Y66!LV2%[+C(W.>"U250MK9!KEFE> ETRALT 2]^"QHIT)UQH
MMN%%#4S(I*A3,(RS7(#F.LD?G+SF\HYD+8+>U[P0]H%QF>+-+@1?";=6F3L6
MLNDV>&U[M8&46<5*X*;6T#'59]M<)#D#R5<%&B1-ZDN@6YQ,2"X3P0MF++>
MO<0:PN+&@#'>5%7C9FLEA0WVJ0J/E('6IM,;N&AT''WT+E'8HPRB.+,:@%D\
MPP@8=+S MF?.V"<"9J-#0D%DKLGT!HQM2&USP!T';-PA=9J48=NJ)4^_81_
MU7VM:*BT2,"XF(H4M46"#I)+B".PS[6M#MN$OL.V3FY>J++B\H'EO'&[#3@%
M(T$T=*]A&+V>H:?EK7EV-N?6B4EE6SY(N%0I&L$4X3IU:"[+CGB335Y@ML1:
MB@S]DK9-$$+UU(HJEY+M_.PZN>,?_V_^+8E,JY)92'(I[NELQT1)3QF%]S/"
MY#QR\@7B$DYU3N<4ZI)_0Y0$ZV^MM !7)3Y;OKY2AK'J5!9]K+"2DUIK L)
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
M% %;TP*R!]GB!]*6&*_H6[QJ,N =YB6<NS4B*%69+<NJ[$J1UF!8D!5^X,3
MC8-AF851/G!T)9V2)^F"C<Z*/P!9\^)9S>=->X!0 TN#EB C,C4U"B;0[CP'
MP>YYA@T\W@ZH6#763@G$,R<0SR99=8\W/P:6?8SS_\9PB-9-AP E&]^9PM2-
MQP^)D!FO, G(S'<'N)YIO@6EV;?T/&A1YFG8P)TA1VWD0>*(;KCOR(1B$UB5
M1AN6XB:&\(!83T=8@]N:-BUM$0I6*#&!'(H=\0N(,%4)>A9T):&'B6W^P6WS
M#Y/[<H'"AN2F#V] OFZRZI!R^\:A4G>%1-L$5Q0'YWK'!OQ:L!!5"3<A86Z,
MB@X9]0P)6*Z!%:H$#$NO:JS;M 84&SM]2&( ?S,TE$4)HX&$@7+H2H%/GVM
M:$YOP=/X=M8U%L"5R=K4L8A["1EC,CX[=E-@<A8XN@0\G<%?;6D_TUA>6\$B
M>S3>>=:#+8RO*69CMIJG'^ S8 -D<*)%R!ZT<J50LD?#6Q!]4BK LX0'B2T-
M$*F&OTZ:U8G84%P@J++@FZ[I@.&5$G:#=&F^B"&]@F96S[.V);^'%NQO"2>9
M[79M<T=@0"B[RN!?_,0,M+01FN,LVNX$;;L2G^1\E3"D *IW;4]SF5)S9Z<^
M)'$ZR;8!Y9%/1Z,-?VF$_;UDB@8,]]UB_BS=E@#?T3[ ML 73_P7K8ETPWO2
M<:(:>7N2(>9\GW?-$N[2& 6-.OCRT6S*ULP"=5C=.R5&*R'-PV^V?B$X3_8L
M4<@"YZPB_0T*%^Y=@V"*[4,%0#$FJY#\R]L81);.)C?ATJN*T2W\ZJ<C.,L*
M2*29$?HRJS\S@"X C=D2*0>*!Q0#$.*S6B_V/AI0.S6.FEZ;7%AYW&?(*]A?
MTB5([(1 DI]224A@!? .A.YY<I+^2I(!(H>Z@?AK7_\Q6$?.P^U&MMOU+:@@
M"]QS2"$G)XD./<-7"F(<#H K1K#$9M>_&OR1OF-]!9L+Y@ZG&$EQZMURH%EZ
M#\IVYB>Z;TR3:Z\. HH$\W3CX+II6E/#_=* 2A3E@KM%7E%(ZG/2-:/BQ"($
M'HR29;B)X3@Z"5!R!2&'@'SI)BL.$FB*LF/$(ZOI BW*1QQ%L*/$FZ>OT&M,
M^IWH^OUU=.0&HD=,&.P>I7K35 6&HV+F9T]:C.01^VC!@EI"/OV.M/NMJ6X<
MER*\%GH<S]BGM$Y(#JX(XR@G77/B7DF3;-D(E8S:03^!L?\7JM_&=C-Q' ,+
M9!/>?#8_<X*?@?CB:-%+\T/B,B[+AV5_9&SGFY^ $W%B85SP3_:^BU@KCA5U
M@26=L>SU-2"?BBB F-,JZ(2%'_F@TW$4SOB27\'>67J$XQS/TTOF'',C;DF6
MTC19,(##_5;.0A9+;YL>N,CY[@(U;*<BY=<)6*PJ%&6C84+M"->+\J8L,#PA
MKP"P"+.H:']X= 65^#Y<?^(P=PWS%MPEZZ'P"RU7W4\D$.QJPJIAB9DDL'(-
MO)20&Z>FR($?%Y[]#87E+KN0N2E0&@G15XGMGE8:?O$H.5?63SXY'@@_7@A4
M^_H;+V!SDI^1BT!W$@O]AIQV\/L)YC\Z.TZ^ \T=_W.VF/UP]@@^/(9_CA;)
ML7[W??(QI%'R>#$[>_88GCD)/^+_/B*,Q1'X:S^V^V+B)3@KLB5 >PD6D,;_
M.(*R(IM<AR8DV%V*O0.'>6@TM.;U8/>_!!A^#;05X'U@8"]!!08?.+PQ)AN"
M/0.Q0I$')%$V\_1W]!P,#IMUXC@DD0V#D4DX3M#F $-NX6%TT]$)+5N\*99N
MC?YA(+)I.4*$# W*<@UZ"66\%*$S=V1CP"RP>O9*#'2_9=7/PD?J88E)(GZ9
M#P #I8M2@VFT3&M[T_K4QIYLBC7#ZV+DQ+ E RKATC,-/LJ\U9)@/'0)6]ZO
M,)?B[JX[^&M'"A2],=C)>\\DLGF36'?AL>YB$JV>:\;H@\D-V"**!'^J87$5
MO-Q_*?%T1(V$@W":%\#G99>RS(XBY?^C=Z>_FW1M:M-22)B#8N.;IF]LW>!B
M%H!CY+WBDLQ#J:4QP4'_%[RKUPFVP03)<0[9%QG/@BA84L0HF<  I/!Q!<VR
M*M>D^H$1\5: 87WM>! #YIB41X[2]!O=S= -'ZB;#D!;QVR*_CAR7%/FAK-J
M3=]AQ+Y 4=QEP/3H%;/'1/:);E7SCX+&PI_DX!> WZ;,72A\KYWYQ !FLYJA
MN6[O@RBR!D0_LNNM,BFA#D<7R3]@+)+LJ L15%KN0 A@.%5T6\!R+IE'8CV!
MN\V1:QJ1P!5Q!Y$UB]B&+PB"4>B1,/3@'(E&<_"-@6;D= GN$4]T;QZ /EL,
MR)![?OB=-#W,ICI^ZL@YKE38A:4PC(-9$HED#!FYQ2GW1OF2"+?#*H?[&:NZ
M&2N2PC'4/MS8,TDB'1*%'A.629WC"Q;.)DL)R$.N,7]U0&M\]=-I^!EYF8)+
MCE6!#*9%_Y>Q>[";?5U0J!<M0&N[DQ(DBS^!X*1'2)'%Z8NWEV_?T\>S%\?I
MUG2;II@A_D58Q^B&%(@@_RN.4K2Z;>\:<'0??WD;1ET_6=3<K1 9G8HN>*%@
M6^#=)7BC!>L>ISLLV>Z<@V-"")AP,IPP\K?W 9%"5D-GB!_72"9SMRLE6RJ.
M9ZN 'N.0UB<D [QP(',(2UF-4FY_(H?CX2QR+DCH)15$K,]93%F>]!V).#-J
MQCGY2.E2>DS$D/TGIY($Q[ V"O9#8R3J9B DGS;$O@#F;+ITY:IM0(5V(+]7
M528>,P:^=PR-W@U#]"(K?W?0U-^R<[<8?XNYR\VN0^H ,U0920]C*98A$95+
MA^*0+!09^:7$-#/GQV8B1DAS+Z-$1=SZ) L\1H"RL"VE)+SJ0GUPJ?#X8/!-
MS& 8]0 S@TQ"(:9; Z8OPVVMS6U6:6H-YIW[D'.6MB#DZ##6!-6Y8(+5-S$0
MTH-M,XX%OAPF3PI";!CTWS161 N@*SAS!J6"S!US6%7></3%W %T)S:53!2%
M%G9EQW[1//VT:^J$?5V5JZ*T!.3)U@\=6AJ' 6?G*U@.TXZ350UN@XMCJ5(7
MFTX&5+-+PZ22Y-79J3=9BQ$FD./74QL$'&,QI5%R=IX#7!(U&<2B+V1IZZ8!
M^XTN^I0@^5*ML^GRJB^PXJ@4_:T1^9N*O@FV.L15@9=#ZAK!$P<\2*<&R9RX
MVF)?E0]U'RHA\(P2>3'Z$P@-ET8=!P83K\7V"5]3=81<%C?&E9<<#.7]T1?K
MK0;S?#D&C 6JH+3$5[C<'J4JR.R$R6UE0\EB.:ZVJJ!+H0M:DD 8P''EI*ON
M @)>1].$.'9%K#O<BCT$B@4S.0<;*0R)+\;IE($YXPH8YT5&,XV!!-<+J&?6
MM"X8A"'"#(L:J+:MU=Q;M(?[HQ_,@LEJAH@T82(8C5?1OH>F$.DI6U6$>;+Y
MM.(/@EDC)"4L3#$U55RWI36R7X:<7"RK"0.+#H]Q2F_ Q&$*C\$ Z3UXD065
M/FE@?8W9V71EV,>6..@^O>Z:_/.H&O@K PQ*E<0)T5LLW:)!:1L 3EJ8@,F$
MG]-$*ZK-=J#R<TIN%3)@-GS%/*6X&5<YL(/1<-F-U%^U!CU$UB:.1=@C,87H
M'C5\ 4P%IBI.4!VQO=H+@\A89KNKFGN>J=3,!.M+CSC1'EY9&HP$!FQLN2+/
M@+5PT2>[D;BT)CE EM9MMCV>:1 J\-C"6?F%4QR G&/+PUF)4<6^8T?%?&/:
M+J;SC(O+  Q9E\F*YH<^*A(M1:4*GUH/;M$;S#E+:KI;8^KD,*$%L70,M)S-
MG1( 7Y9V-ETQ]D%\Q@_>9QR5@K\\RIXHB&>K3BI:/'*<,CO3ZE]&8FCZ\0)Z
M-DA!*D\!?$XZQD<!<-L3[YG3M@LXL:["P 5)?"#P@-I?LJAUE2 ;+:I!_M,9
MM"R4B/48G_A9#LH4G9O,D3O0?)2H8BV*3H62@58.SA$[;%Q%EH$"Y@#0CK D
MFR.JNMYNRP[KW6#"$CJ*M B/Q2"1@D6.+_4:QWY:SIV9=>85S=Z*A"IN\3(/
M*IK,[FDI*+ ,;(#00+U5Z6,QX9)Q,3AYTW)A+4AD)P =7<(HSA-O6Q#BF2?7
M_%R,(Z<B(6AU@SPU>6:4*-TTP$.9_3S8MNY^)R6D2B_K+?1>2ET8T:I)2KF
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
MY(,A1TJEOGRX$_4/,6MASQ%>2*1 C!)(0=C-UZ\T_N8TO)GMP.#FV5CQQ0;
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
M7 :@Z\&J#5*E;^:5(CL:?IG;NPBU<[#G:Z5H;[@$S>V6_ %02P,$%     @
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
MUX$)K2I+3'9$I*"%L44>@'$5X\"0DHD4>]"%M*8Z1[9H5*8*V2P>PRUS6JA
MM%WV 1P8'#!4(H^2949G1B SIKU.&-Y%]#K5,<@.B[B,<HE%*3Q6AN.R,3DL
MN3#LGLL<B$:MJ5JAYAU/O(B<_+>A,T,9"B6A1$0H4!&#X0L)['L>KW!+<)VB
M^N1:HI"0:3&O;*(*[%X3/2G<QJ\72EE6"*,E>UW, ,\>XB[I(:><H?%4\NCN
M8!XE6B*3?5GP_>KCA#23>@,0"+0*V"[[@CBD-ZXVVP9XBF5H=UPDYD(B:6Q0
M3FV"/-T6Y_6KT7!P>D:Y25,T]F#5PT3@/0)CI]:0?:_S$+4O[8-G@HM@HKFL
M.KUJ1OR_E4%57=]K!FB[9[C'6X=YQ62$,!_GMDR"3_ZC"C-N\2!0OL>'6&+<
MGN,@EUH,V$^\VS!)CZM)>MPX_Z[*^H31/\L-2@CK/)-\[S1]/EJ]Y%55&AW>
MD-FP?W8UG\W\Y>#L+>4^%3C(RL:R5*.L\&O-$NV,5B)"+7U24;?J!=(:9M2Q
MT?'O9=_@T0NK7]Q$4EO?O]S<X:DO]" /HX- 0$5 &J.9!KZZ0=.%NR>\ 6Y:
M;\)(Q=F_VU :]P0R"*7\"9; WN[JHII,89A3&K8;3AC22-#RJB.[;$*B:.&Q
M0"_P?7DRZ'A_/!Z)-$^9RM-%B+O("LW-FF0";VJZQ6:OOKP;BA][TQ9#M"Q
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
M-LJB/?EPC_\#T"X!][=*V=/$->C_,+-?4$L#!!0    ( 'FLDEGVJ]@4S0,
M !0*   9    >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;,56;6_:2!#^[E\Q
M<JLJD2C&-N\!)$A:M5+2HC3M?3C=A\4>\*KVKKN[A/#O;W8-+J0$]:33W0>P
M=V:>9V?&S[Z,-E)]UQFB@:<B%WKL9\:4PR#0288%TTU9HB#/4JJ"&1JJ5:!+
MA2QUH"(/HE:K&Q2,"W\R<K:YFHSDVN1<X%R!7A<%4]L9YG(S]D-_;[CGJ\Q8
M0S 9E6R%7]!\+>>*1D'-DO("A>92@,+EV)^&PUG;QKN ;QPW^N =;"4+*;_;
MP<=T[+=L0IAC8BP#H\<C7F.>6R)*X\>.TZ^GM,##]SW[>U<[U;)@&J]E_@=/
M33;V^SZDN&3KW-S+S0?<U=.Q?(G,M?N'314;=GU(UMK(8@>F# HNJB=[VO7A
M -!OO0"(=H#(Y5U-Y+*\889-1DIN0-EH8K,OKE2'IN2XL!_EBU'DY80SDYMW
MLP>X>&"+'/7E*#!$:1U!LH//*GCT CR,X$X*DVEX)U),CPD"RJ5.*-HG-(O.
M,GY.3!/BL %1*VJ?X8OK F/'%Y\K\,_I0AM%"OCK5(D50?LT@5T50UVR!,<^
MR5ZC>D1_\N95V&U=G4FO7:?7/L<^N95B]=:@*N &%^94=N?Q4PUR"=0TN4!5
M]ZT!)D.X7BN%PD IE5L!%)C7TZ4T'3"1NLC;8_."Y4PDJ&&#"B&11:FXQM02
M++FP+LB1EH(&I@FA$\47Y%[8)3[T3J?DO=\A;QW2FRLN$EZR'-(U#KU/^&2
MU%0X-7FOO;#7&/0B;Z>N,(8WK_I1&%X!49&W]D2=VA-W#^QQK[:W^UZX-[<'
MM;G;\MYZQY5[4<=[D,8F94=5%H.>]U%0"&H#BAD$5G<(JHTS):OW*9AZ,Z:Y
MAFI[!.HX/\1I%W),905EG/V.F;7B9ON3;(Z*RY0G4+)M8;\C*^2:'M^8XE7K
M72MI-R"D[>CS^*7"'VL4R;9:H_F6JF6"OF>>TQR*JKQ(F%);+E8[[DLJ.8X:
MT2"&B_#2L[][=*H71ENE>,\ MA=60+_VPVK >A3:R5*X__R54J9J=8/: IN,
M)YD+H(U'2Z4A8X^$QX1J2>O&Z28\4(RQ^U.E+RB5?.0D.HJISB0G;5$IGJ3*
MQ-9]X=Z5_D7NIY09-T\K-OZGBNTVNE'XHF"/Y/R;HHU/JA;"YZIU*NT?*!=>
MTZR-;CCX'>7"OZE<^+^42R7'G4;8[;R@7/C/E7OJ= @.3NH"U<K=1S051AE5
MAW9MK:\\T^JD_QE>W9?NF%IQ01K')4%;S5['!U7=0:J!D:4[]Q?2T"W"O6;T
M=5'9 /(OI33[@9V@O@A._@902P,$%     @ >:R26;Y/I;6Z @  X04  !D
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
M;#9<D-68K!9:K.UHF@M-@\Z*&?VS0&D.T/Y2"'U8F #'_RJ]_P%02P,$%
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
MU)K+-4R8X>88_Y,9CO-?;A R)>CB.F2F$2QI<O:/TI PBVNE.1I0&;":8'Y
M,',$MRU!1C>XI;AR%*$T3GXNE27_0O.$D'A[32F)?G*(-': IR@M3YAHT[S]
MA%L4$)YU.X:O)<_(*"TH8J=!K1Q[U[T$5Y0_W*,S8#*%PXA2ON@=G]UVJ/'4
MBB#;WOM5$7<:(LT:-6O<62K+Q/]8'WJ+'GQ06]22IIR%A3L@;MV)OH;S7[YA
MU+T)+_ZCZ"QI0M(4*I3AUG3.._VH&U[W#X7Z0U<2OS>G"EDI4P/Q93>.(@([
M;\7PAF*N*DTMUDPI6^/P&FK8AL/5=?<BN'1FT@;1 ;M&<:SU_8-AE:->5R/9
M0*)*:>NYM=?NI_ZX'G8_W.LG8\;TFDL# C,*#7I7%Q[H>@S7&ZN*:O2ME*5!
M6HD;>KE0.P>R9XJZK]FX!/NW</0O4$L#!!0    ( 'FLDEDDD1@+FP(  -<%
M   9    >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;)54WV_:,!!^YZ\X9=.T
M21T)"?VA#B(%1M<]=$6AW1ZF/9CD(%83.[--:?_[G9V04HDB383$Y_ONN^_B
MW(VV4CWH M' 4U4*/?8*8^I+W]=9@173?5FC(,]*JHH9,M7:U[5"EKN@JO3#
M(#CS*\:%%X_<WES%([DQ)1<X5Z W5<74\P1+N1U[ V^WD?)U8>R&'X]JML8%
MFOMZKLCR.Y:<5R@TEP(4KL9>,KB<#"W> 7YRW.J]-=A*EE(^6.-[/O8"*PA+
MS(QE8/1XQ"F6I24B&7];3J]+:0/WUSOV*U<[U;)D&J>R_,5S4XR]"P]R7+%-
M:5*YO<:VGE/+E\E2NSML&VQT[D&VT496;3 IJ+AHGNRI?0][ 1?!&P%A&Q Z
MW4TBI_(K,RP>*;D%9='$9A>N5!=-XKBPA[(PBKR<XDR\N$[2&:2S^7TZO4X6
M,YBGM]_2Y&8!'^_8LD3]:>0;RF/1?M9R3AK.\ W.00@W4IA"PTSDF+\F\$E@
MIS+<J9R$1QEO,].':' "81 .C_!%7=61XXO^N^K?R5(;1=_*GT-U-ZS#PZRV
M?RYUS3(<>]0@&M4C>O&'=X.SX,L1S<-.\_ 8>[PH&)%"BO5&905]B#!7<JU8
MI0\I/<IU6.E=@6#LF</2]BHXCS :N&B:WW81789PZD5%W:H  CF?*10B5%(;
M@F7$ "NN,U;",S*EH=^SAPCS-EY;,WIMAGOFCTVU1 5R!;IY 2^I\]YG^@TN
MSGM3F^PPY#U!FG]X<AJ&O>01%4T;DLTSNC.>0TW\+G(//(CZPP@.'9N_UVP5
MJK4;*1HRN1&FZ;MNMYM:2=.L+_!FY-TPM>9"0XDK"@WZYZ<>J&:,-(:1M6O=
MI30T"-RRH,F+R@+(OY+2[ R;H)OE\3]02P,$%     @ >:R26<"$=7(K P
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
M/ E'H3^<+-'0]Z>KR3*</*/9]&OHAY\7]V@.7# 2"8B1CWF";@,0F*3\#GU
MJT6 ;F_NT TB.5HF=,=Q'G/7%#)']28SJO)Y*O.Q+^0SC40+.>U[9%MVIP'W
MK\>=!CRX'K?/<5,:6[MKU^[:6L^YH/>O8S^':WD@_^N_FIPIM3K-6JK_^[S
M$0P,V> <V!X,[_V[]H/UJ<FGMQ0+WDCLS$.G]M#YG_JIAY'TL,FX4J"K!=2<
MVWMVK_OHFOM30QJ"NKWN>5#0I&1_K(/* LR3=E.S<8S9EN0<I;"1F-7J29Z5
M\Z;<"%KH#EQ3(?M9+Q,YHH&I 'F_H50<-ZJIZZ'O_0502P,$%     @ >:R2
M68<P;JK_ P  GQ$  !D   !X;"]W;W)K<VAE971S+W-H965T-3DN>&ULK5AA
M;^(X$/TK5FYUVI6V) Z! @=($*X]I*.M2MG5J;H/!J80;1)SMH'=^_5K)VE"
M-HE#5;Y [,P\OS>.9VSWCY1]XUL @;X'?L@'QE:(7<\T^6H+ >$-NH-0OGFA
M+"!"-MG&Y#L&9!TY!;YI6U;;#(@7&L-^U/? AGVZ%[X7P@-#?!\$A/T8@T^/
M P,;KQV/WF8K5(<Y[._(!N8@%KL')EMFBK+V @BY1T/$X&5@C'!O8EO*(;+X
MXL&1GSPC)65)Z3?5F*X'AJ48@0\KH2"(_#N "[ZOD"2/_Q)0(QU3.9X^OZ+?
M1.*EF"7AX%+_J[<6VX'1,= :7LC>%X_T^!<D@EH*;T5]'OVB8V)K&6BUYX(&
MB;-D$'AA_$^^)X$X<<#-"@<[<;!_=7 J')J)0_-<!R=Q<*+(Q%*B.$R((,,^
MHT?$E+5$4P]1,"-O*=\+U;S/!9-O/>DGAO/%;#9Z_ ?=WZ#Y]/9N>C-U1W=/
M:.2Z]XN[I^G=+7JX_WOJ3O^<?T;3\ !<R$D7''V<@"">SS^A*[283]#'#Y_0
M!^2%Z&E+]YR$:]XWA>2G1C%7"1<WYF)7<+E?B09JXL_(MFRGQ'UROGLS[V[*
MJ*2AL=/0V!%>LP)O=) "R=*'*[F\KCCQ 3V/EEPP^:W^6Z8NAG/*X=0"[O$=
M6<' D"N4 SN ,?S]-]RV_BC3>B&PG/)FJKRI0Q^. LJ$]S^LT8IR428U]F]%
M_BJU'(:.C3MRT@ZG&HI6V.[B9FJ5(^>DY!PMN44H\YL?L=O(O%;ZG<4([9.!
MK5^H%2V<<EJME%;K7%H^Y1Q*>;5J>14MKNQR8NV46%M+S"6,_?#"#?I"_#V4
ML6H78U$RF44K-9FM<G+7*;EK+;DG64/0!':4>S*I/,\@6 (K75Q:G+<NK@N!
MY21W4LF=RZ:5SB657P@LI[R;*N^^,ZUTS_H2BU96^5>(K:P*6N].*@F$;O5J
M3?+43@HT?G]B23"TW'0F>6Y9A<3:,G1&;DD ZJ:TQ*R*7%;$L+Z*+1KS!KJE
M!V"AVK.@.:SVS!,>Z!.-'O6MZ^U2:/D89+42.Y=--EA;?-^L_D)H>?592<;Z
MFER;<,8U ,^X/$CU=;S$1+/WP5DQQ_IJ?D:B&M= 5(DJ%OB"J)*=0H6@; .
M]3N <]+;N :C2M%UO:*B2=5^"V<%'FNK:'U6'-< 5.GI%/;3!3U%$\TN#:O*
MG3\;9173UE=,R7%&Q)[)>5O+M"K5%D]M,;1Y<CH-@&VB4SZ72W(?BOA,DO:F
M-PGCZ,!=Z._V7,FYY(UM]=SX\L',AHBO+F:$;>1"03Z\R.&LQK4,#HMO ^*&
MH+OH?+RD0IZVH\<MD#4P92#?OU J7AMJ@/1.9O@34$L#!!0    ( 'FLDED"
MM1*%- ,  *T/   9    >&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;+57:V_:
M,!3]*U8F39M4-7%X%#I  EJZ2..ATFZ:JGTPX0)6DSBUG0+2?OSL0!,V%5-8
M\X783NZYYUZ.?>3&DO%'L0"0:!4&D6A:"RGC2]L6_@)"(LY9#)%Z,V,\)%)-
M^=P6,0<R38/"P'8=IVJ'A$96JY&NC7BKP1(9T A&'(DD# E?=R!@RZ:%K9>%
M6SI?2+U@MQHQF<,8Y'T\XFIF9RA3&D(D*(L0AUG3:N/+#J[K@/2+[Q268F>,
M="D3QA[UQ)LV+4<S@@!\J2&(>CQ#%X) (RD>3UM0*\NI W?'+^B]M'A5S(0(
MZ++@!YW*1=.J66@*,Y($\I8MO\*VH(K&\UD@TE^TW'[K6,A/A&3A-E@Q"&FT
M>9+5MA$[ ;B\)\#=!K@I[TVBE.45D:35X&R)N/Y:H>E!6FH:K<C12/\K8\G5
M6ZKB9&M\W^^W;W^B80^-O9N!U_.Z[<$=:G>[P_O!G3>X0:/A-Z_K78_/T(@K
M,7"Y5J. 1!*1:(JNGQ(:JW])GJ&!TM"G*Y"$!N)SPY:*G<YA^ULFG0T3=P^3
MH2_/40F?(==QRW^'VZJHK#(WJ\Q-\<I[\#H)#:8TFHN4IQ?&G#V#9BK00Q_"
M"?!?Z#?JTXB&29@MO<;;F$=OFTL1$Q^:EMH7 O@S6*V/'W#5^6*HHI1544K1
M2WNJ,/8</;0G0G*E[%=YEPK@7<YXEXW=OQ:2JCT#4Y0(F"4!"M3F$Z^Q-.-@
M!ZV!<&&@5,DH5=Y#$&1U4!#&/"<VMII542U,$-4">%]DO"_>21!FG%+]H"!J
M&:6:$:I/_(5:XNM_FWC<\6!,<F)7ZUD)]<+44"^ -W9RWW'>20\'@"H']8!W
MS!#_MR+><#Z8LYS:VMSXL%N8*' 19H=SM\-&4SI&%68@_ 99Y%Z&S2;42WA$
M9<+A#/7H2@\V'C*<S:@/IY\<YK2G-COW0UPI3B=%>"#.31 ;O>H8G9B!2H=E
MDCL<-EO323)YRW%B3'MJKW.7Q+7B9%*$.>+<';'1Q(Z1B1G(<)K8.Y<O?9'M
M$SZGD4 !S!24<WZA=@K?W TW$\GB]#XV85+=[M+A0MVG@>L/U/L98_)EHJ]X
MV0V]]0=02P,$%     @ >:R26;'"L'5]!   ^AD  !D   !X;"]W;W)K<VAE
M971S+W-H965T-C$N>&ULM5EM;^(X$/XKH]SJM"MU&VSHR_8 B:;;/:2E165[
MJ]/J/IC$@-4D9FT#K70_?IT7$M(-AM#PA<2)Y_$\XQG[(6ZON'B2,TH5/ =^
M*#O63*GYE6U+=T8#(D_YG(;ZS82+@"C=%%-;S@4E7FP4^#9N-,[M@+#0ZK;C
M9T/1;?.%\EE(AP+D(@B(>+FF/E]U+&2M'SRPZ4Q%#^QN>TZF=$35XWPH=,O.
M4#P6T% R'H*@DX[50U<./HL,XA[_,+J2&_<041ES_A0U^E[':D0>49^Z*H(@
M^K*D#O7]"$G[\3,%M;(Q(\/-^S7Z;4Q>DQD321WN?V>>FG6L2PL\.B$+7SWP
MU=\T)10[Z')?QK^P2OLV+' 74O$@-=8>!"Q,KN0Y#<2& 3K?8H!3 _S:H+7%
MH)D:-&.BB6<QK1NB2+<M^ I$U%NC13=Q;&)KS8:%T32.E-!OF;93W='C8-![
M^!?N;V'4_W+7O^T[O;MOT'.<^\>[;_V[+S"\_]IW^I]')_! ES1<4'UU^31D
M\32\OZ&*,%]^@(_P.+J!]^\^P#M@(0R8[^L.LFTK[68TF.VF+ETG+N$M+B$,
M QZJF83/H4>](H"M^64D\9KD-38BWKOJ%)KH!' #MTH<<O8W;QK<:68Q;\9X
MS2UXCF8G=/[JJ58S<.))IN($>E+JNB6A!U\9&3.?J1?XT1O+N/-_98%,QFF5
MCQ.M %=R3ES:L72)2RJ6U.K^^0<Z;_Q5%H2:P HA:64A:9G0N_U@3IC0RX,"
MGTL).K/<=91(%);2/$HPSV+,:+U:=AMM>[G)R=2CX.A9YNA954>)Z_)%J*1>
MU5S*EF3LTS)GSW8Z:^I1</8\<_;<Z.R A2Q8!/!C0(,Q%:4I9$2HFD(U@17(
M7F1D+XQ5-13<6^AT^4Z$(.'.TKFHDW=-8 7>EQGO2^,DKWFOUKSG5##NE7$V
M R$(HF6WC)_1\$!^GS)^G\Q)3)YW)K$1H>IDU@16((L:^7[<J#.-4[2:J->%
M5N2^H4507:F\ PFWDF0NVS8<L^VA+''.$INW$"?+9?@?]EFCS8"5)[DFM"+]
M7/P@L_JY)NZ3SZ? )W O/"KDK@RO5>34A58DG\L<9-8Y:[$'/*)^ O1YKO_/
M4 \D44Q.2/+?QI#V9O@+\,A+><X;#0_EG:LF9)9-O_-6-!+W>_,VPV-3M1M-
M#V6>2S!DUF"OJGV/S<P,6#GACZ')4"[*D%F55:[V6G5976A%\KDR0V9%]>9J
MWR'86MO+_1B*#>62#9DUVYO+W0S?-)7[,>0;SN4;-DJD[NWPINKN;D:LFO)U
MH17YYQ(.HUKK'=>DQ5+RQU!V.%=VV*SLWEKO.^ -]6ZV/)1XKNFP43;]EO5[
M[')FQ,H3?PQ9AW-9AUOU9GU-:BPE?PQMAW-MAZMJNXI9OT/;H>U97ZNTLS>^
MHFLZT_AP04+\<2_YUIP]S0XP>O%G^U?/K]&5DQQ#Y##)J<B B"D+)?ATHB$;
MIQ>:@$@.&I*&XO/X6_V8*QW3^'9&B0YKU$&_GW"NUHUH@.RXI_L+4$L#!!0
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
M^T?NX*"V;@9HDLJ=P-HH[6D[9H:UN_ZFUS-J2M66"4T*V!AHT/EDZJO:]W6
MLG1>6TLTSG7;W(Q*4#;!W&^DQ$-@"[3#-_X#4$L#!!0    ( 'FLDEF3$Y#Z
MCP(  .0&   9    >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;*U574_;,!3]
M*U:&)I &^4XI2R.5 !H2&ZBE[&':@YO<-A:.G=ENR_[]["1$I82.27MI_''/
MN><X]4F\X>)1%@ */964R9%5*%6=V;;,"BBQ/.$5,+VSX*+$2D_%TI:5 )S7
MH)+:GN-$=HD)LY*X7KL32<Q7BA(&=P+)55EB\?L<*-^,+-=Z7IB09:',@IW$
M%5["%-2LNA-Z9G<L.2F!2<(9$K 866/W+(U,?5WP0& CM\;(.)ES_F@FU_G(
M<HP@H) IPX#U8PTI4&J(M(Q?+:?5M33 [?$S^U7M77N98PDII]])KHJ1=6JA
M'!9X1=6$;[Y ZR<T?!FGLOY%FZ8V#"V4K:3B90O6"DK"FB=^:L]A"^ &;P"\
M%N"]%^"W +\VVBBK;5U@A9-8\ T2IEJSF4%]-C5:NR',O,6I$GJ7:)Q*QFEZ
M._MV/T63R_3R^F%\?G.)#B] 84+E$3I&L^D%.CPX0@>(,'1?\)7$+)>QK71O
MPV!G;9_SIH_W1I_;3)T@W_V$/,<+>N#I^^'^2[BM'7>VO<ZV5_/Y_V#[QW@N
ME=#_JY]]]AJ^H)_/W+4S6>$,1I:^3!+$&JSDXP<W<C[WF?U/9"^L^YUU?Q][
M,LXROF)*H@ED0-9X3J'/;T,2UB0F"M:)._ &@1O;ZVTG?65NX/M=V0N-0:<Q
MV*MQQN:$4LC_HK$AB;::>T//#7<D]E0%X? -A6&G,-Q_BE3G'V89()VD*!60
M$X5NN)30>SG"5QJ.7=>+=I3V53G#8;_2J%,:[55ZSQ6F?9JB5Z].1_^I[^R(
M>EWF#H.A-]A196]ED,G_KU@L"9.(PD(#G9.!9A!-IC83Q:LZEN9<Z9"KAX7^
M#($P!7I_P;EZGIBDZSYLR1]02P,$%     @ >:R262_> =NK P  \0H  !D
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
M@+J^8$R^'F0WJ';IC/\#4$L#!!0    ( 'FLDEF8D9&6>P0  ,P4   9
M>&PO=V]R:W-H965T<R]S:&5E=#<P+GAM;+V8;6_;-A#'OPJA%4,+M!$?])C9
M!E*GPS(L:9"';D"Q%[1-QT(ET2/IN/WVHV1%DBV*5E&C;VQ1NCO^[T3=3^)H
MR\47N6),@:]9FLNQLU)J?>ZZ<KYB&95G?,UR?67)14:5'HHG5ZX%HXO2*4M=
M#&'@9C3)G<FH/'<K)B.^46F2LUL!Y";+J/CVGJ5\.W:0\W+B+GE:J>*$.QFM
MZ1.[9^IQ?2OTR*VC+)*,Y3+A.1!L.78NT/D4^X5#:?$I85O9.@9%*C/.OQ2#
MJ\78@84BEK*Y*D)0_??,IBQ-BTA:QW]54*>>LW!L'[]$_[U,7B<SHY)->?IW
MLE"KL1,Y8,&6=).J.[[]@U4)E0+G/)7E+]A6MM !\XU4/*N<M8(LR7?_]&M5
MB)8#\GH<<.6 ASJ0RH&4B>Z4E6E=4D4G(\&W0!36.EIQ4-:F]-;9)'EQ&^^5
MT%<3[:<FMY?7TW_ GQ^O;A[ IP\W#X]W']Z"*17B6Y(_@8N,;W(E 5^""RF9
M/J+Y OR5T%F2)BIA$KR^9(HFJ7P#WH''^TOP^M4;\ HD.7A8\8W4UG+D*JVS
MF,V=5YK>[S3A'DT?Y^H,$/068(@]@_MTN#O9=W=U=>H2X;I$N(Q'>N+5U:!-
M-6A3C;15C<\7,ZF$7IK_FK+>3>.9IRF>UW.YIG,V=O0#*9EX9L[DUU]0 '\S
MU>!$P?8J0NJ*$%OTR70C!,M55053JCM_O_0O.LGS)"8(!GCD/K>3Z)J%D>_Y
ML#;;D^?5\CRKO >N:&H1M_,.6K.B$&'HQP?J#'8^#C!&9GE^+<\?5+W6PC&I
M]+NS1R1"Z$"DR<S'Q<(W:0QJC<& $AY1&'2FQ@01" \4&LQ\&"!L5AC6"D.K
MPAMF6W]AMRI>!,/.+3;8X= /8&P6%]7B(OLMWF^@X/,URV9,&+N"-=+W=H43
M!=M+.JZ3CG].GXQ/69$3!=NK"((-7>$/=LHJP'XW\KK-R&1'_#CHZ96H]0*
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
MC(%%(+0!SL\X5^\O>H'ZWQBC?P%02P,$%     @ >:R264P_$G[R!0  <#<
M !D   !X;"]W;W)K<VAE971S+W-H965T-S,N>&ULK9M;;]LV&(;_"N$%0PMT
ML45;=IPY!AJ+Q#HL:]'#=E'L0K:96*@D>A0=-\!^_*B#);-6.*M[;V*=OH>4
M7O(3^4:<[:7ZDFV$T.1K$J?936^C]?:ZW\]6&Y&$V:7<BM2<N9<J";7950_]
M;*M$N"Z"DKA/!X-Q/PFCM#>?%<?>J?E,[G0<I>*=(MDN24+U="MBN;_I>;W#
M@??1PT;G!_KSV39\$!^$_K1]I\Q>OZ:LHT2D6213HL3]3>^U=\WI- \HKO@C
M$OOL:)ODM[*4\DN^\V9]TQOD-1*Q6.D<$9J?1[$0<9R33#W^KJ"]NLP\\'C[
M0.?%S9N;68:96,CXSVBM-S>]JQY9B_MP%^OW<O^+J&[(SWDK&6?%7[(OKYT,
M>F2UR[1,JF!3@R1*R]_P:_4@C@(,ISV 5@'TVX#1,P'#*F!X;L"H"AB=&^!7
M ?ZY >,J8%P\^_)A%4\Z"'4XGRFY)RJ_VM#RC4*N(MH\X"C-6]8'K<S9R,3I
M><!N/[XB/$K#="7(;\*(E)$7@=!A%&<OR4_DTX> O+AX22Y(E)*/&[G+PG2=
MS?K:%)XC^JNJH-NR(/I,01ZYDZG>9(2E:[&VX_NFTG7-Z:'FM]0)Y&)Y2>C5
M*T('U&NIS\(=_FN87I*A]VQXX Y_N])U^*@EG)T?/FP)Y^[P0*SJ\('C60[K
M5C L>,-G>4M-WJ295CN3-71&/K]>FAW3[?]J4[J$C=IA>2Z\SK;A2MST3+++
MA'H4O?F//WCCP<]M,B%A 1+&D# .@EGRCFIY1R[Z_-"]X[Q[DS"1NU2WZ>JD
M=-45"0M*F%_ \I?EX]R;3*>36?_Q6+#3J^AH[$WMJSBH8I82?JV$[U3B8G))
MR5T4Q_E;U<JZY/.=2)9"M78X)[2K,$A8@(0Q)(R#8);,XUKF,3*?CI'R(F$!
M$L:0, Z"6?).:GDG'?+IRHQK<FF)%BIID]<)ZRHO$A:X;],G3R)4;6,]AJP%
M!\$L*:]J*:\@K\:KDU?+Q$S>[#?+PEE45VV0,(:$<1#,TFM:ZS5UZL5"%3^1
MY>[)S)*)W!:S4RW)=J=6FUQ!+67<IE])'5M#@Q/]G$5WU0\)8T@8!\$L_;Q!
M,^$<_-\A$/FGG"P:I5VC(G=!71,KE!9 :0Q*XRB:W0".' </.3BJ:"B5D;0
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
M<VV@GB\8D[N)WJ!L;KU_4$L#!!0    ( 'FLDEF& 0A)F ,  #X0   9
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
MF,8#6@5C/$Q[<)/;QB*Q,_NVA7\_VTE#B]*JDWA);.>>XWNNXW.':R&?5 Z
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
M:7>KEO7NP[0/#GF36#.8LYUF^^_/!@H)N"2*FB\)!#^OG^<E^ >,MUS\E&L
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
M;W)K<VAE971S+W-H965T.#4N>&ULM9U=;]LX&H7O]U<(V<%B!D@32[*^NFF
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
M[;L:>8YLR<IF'](V[9GUZW[)>)'6#4_<=$2!V/T]F]7;(ND([9]X[U[-2U9
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
MQR$-AZK$5N$(T[UH8,#?&_"=!E3]4]6MA%+O&@:'J9.0A)Z1.R +<1!1(WE
M1D-"/#C]8)]^X$R_'\B/W;#.NT]2#>OMV["&G 5V+BQDV+PK@"R(8Q88S@ 9
MC3TZ<F/"O;/0/7UW5:4F[Y%9&4XY*Z<,EDP4;-!WT;[O(O>@YAFOT@+JL,BZ
M6>9X/JI(7(I!OO$^W]B9;UL^H&QCZTJQ.4AM"69&OH $SA=[^L'OG5HV^I:'
MEPM8%& C;T 68D(,>PD@\Z,X&C-P0"[8:>!M>KVW9/3AAJYB/S!=V3+EBL:F
M*UO6N"(CKHAV19Q%(^$KKGQE1ZI&'V6BLC%IM&2J:,,>U-"$G;C@*AU]2U?M
M."Y)G))ATAI"L)M"1NM'WVXP]:F9,Z A9M* 9BQK31[X9/3 -BV<8^81,W5
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
MUS,!^8KO!';RZ!Z95%:</YK!-.I;CG$$"83*2&!]V<((DL0H:1]/>U&K9)K
MX_N#^I<\>9W,"DL8\>0'B53<MSH6BF"-LT3=\]TWV"?D&[V0)S+_1;MBK>];
M*,RDXG0?K!U0PHHK?MX7XBC \TX$>/N O!!V <I=CK'"04_P'1)FM58S-WFJ
M>;0V1YCY5Q9*Z*=$QZE@=#N;39>SR7RY0(/Y&(UNY\OI_.MD/II.%NAR# J3
M1%ZA"T086L8\DYA%LF<KS38*=KCG# N.=X+C>FC&F8HEFK (HK\%;&VZ=.X=
MG ^]6L7;4%VCAOL)>8[71 ^+,;J\N*K1;905:>2ZC5,5X902I5\\A72J:*1=
M$[8!%A*0Z.=@)970K]*OJA(4PLUJ8;._;F2*0^A;>@-)$%NP@H\?W);SN<9V
ML[3=K%,/9H01FE&]4\Q>U(Z1 D$17Z,TP?M<X"DCJ<FLRGR]O(M> (L:GW[I
MTZ\M[P,3$/(-([_!%/=0ZW.E]?]#:5NEY59M[OH%\ZL\%5%^'F5.OVW0=KI=
MKV=O*V#M$M8^!VM5P8JHUA&LX?@G6)V2U3G':E>Q.F]8;C6H6X*ZYT"=*E#W
MO2#7>3W/G'.H;N7QY+QA.2=81V>G6\M:QJ [X5IOM$JB^VZB]TKTZHE<X:02
MYKU]&9M.L_4/T#[J%!3$)N^'$H4\8ZIH&N5LV7,'1:=Y75XT[!D6&\(D2F"M
M0YWKMF:+H@<6 \73O.^LN-)=++^-]7<#"+- /U]SK@X# RB_1((_4$L#!!0
M   ( 'FLDEGG@]+Y2 8  /TN   9    >&PO=V]R:W-H965T<R]S:&5E=#DQ
M+GAM;+U:;6_B.!#^*Q:W.G6EW25VWJ!'D2AFKY6VI2KMGDZK^Q# A=SFA4M,
MV?WWYX24X,1U@1WXTI)DYK'GB6?TC./.*DZ^IW/&./H1!E%ZT9ASOCAO-M/)
MG(5>^BE>L$@\>8J3T./B,IDUTT7"O&GN% 9-8AA.,_3\J-'MY/?NDFXG7O+
MC]A=@M)E&'K)STL6Q*N+!FZ\W+CW9W.>W6AV.PMOQD:,/R[N$G'5W*!,_9!%
MJ1]'*&%/%XT>/J>FFSGD%E]]MDJW?J,LE'$<?\\NKJ<7#2.;$0O8A&<0GOCW
MS/HL"#(D,8__"M#&9LS,<?OW"_KG/'@1S-A+63\._O*G?'[1:#70E#UYRX#?
MQZLK5@1D9WB3.$CSOVA5V!H--%FF/ X+9S&#T(_6_[T?!1%;#MAYQ8$4#J3J
M8+WB8!8.YJX.5N%@Y<RL0\EYH![WNITD7J$DLQ9HV8^<S-Q;A.]'V7L?\40\
M]84?[_:O>K=_#D;H^A;U^OW'F\<OO8<!1<.'J\$]Z@]O[NX'5X/;T?77 3K[
M,AR-W@M+<7N +O_.'P]O![</Z(PR[OE!^AY]1(\CBL[>O4?OD!^AAWF\3+UH
MFG::7,PV&[,Y*69VN9X9>65FF*";..+S% VB*9O* $T1YB96\A+K)=$B#B?\
M$S+Q!T0,8BDFU-_=W52XT]W=B28:<_/FS!S//.J;^]8;ISP1V?>/Z@VM9V"I
M9Y"5I/-TX4W814/4G)0ESZS1_?TW[!A_J-B%!*- 8!+SUH9Y2X?>'?(Y2] D
M#@7V/"N!SPR=!7$JEK\?B=OL ^+>#Q6?:UP[Q\TJ\G/7Z#2?MTEZTX+J+*1P
M[$TXMGXAS;UHQM(L77N3R3)<!AYG4[2.LB]%>9V'A[[=QT& 1-U=><E4N7!L
MR(4#"4:!P"2FG0W3CG;A7+*9'T5^-$.77N!%$Z:B;@WA;+W?MFL;1JNR4+0C
M[4L*$)A$BKLAQ=62(JK[&XRX-48P)D;+L2J4U.U4S%'M= X,MK4)MJ4-=L<$
M._N25Y-O-RP<LT298=IQ]LTP2# *!";QV][PVSYY+6M#,@T)1H' )*:Q42I'
MX]>K68&QG90?6RW7K.:NRJ[=LFRGDKSZ.1T:\Y9:QK]8K H .6#'Q.UJP"J[
M.C%492<3(X="RE"(-A2QY$53%*'^,DE8-/F)'A(O2D6^9.U8;_JOZ#U$?\=3
M;172C[%O<H"B42@TF=]2GN,W]/D12A$&%>2@:!0*3::[U.18+\IWJT:6*ND,
MJU:-%'9MUVU7M;A^3H?&7 IWK%6KNU0C6Q&P;;?<:L JNSHQ5&4G$R.'4BIC
MK)?&Z[30EAI(Q=L'1:-0:#)YI8+&[NE+#9!,+NB&1*-0:#+=I8;'>A&_6ZEI
MU3/%J1:0OM+*J8F>8TAJ7&IJK!62NY29=CT,UR358!56-4IH866_1HF\]5>J
M5:)7J[UA_SI;_<$R#^8N3M9"A_/$'R^Y-PX8XC&ZC46"1#P1Z9&974><"4JY
MMC+I1]XW54#1*!2:S'JIEPD^>64B6HF^-]V0:!0*3::[U/1$K^E5.Y-^L:60
M;U J^22UM&S95K5?45C9#JZD.-7/[]#X2\U-M"(3IJ?1C['W^@(5V5!H,K^E
MR";6Z=,92$,7=$.B42@TF>Y2WQ.]OC\LG>L2O>685>&AL!+I;%?3^1B[Y:1L
M"LBO-@5Z@+T7#VA3 (4FDU<V!>3T30$!;0I T2@4FDQWV100?5-P6*XJY'\+
M5U-58616$_48'0(I.P2B[Q!R<0TBI4$WVT'1*!2:_+6_;&!,X^3Y;()V+J!H
M% I-IKOL7$S]3O^;^8R\RGJ/Y/7N%^M=>?3%5.SJ.[CV541A9F%<[9CUD1S*
M5-ETF"?XD* ?8^^5"/HA 0I-YG?KG,_I/R28L"=[8(_V'*/',<L>Q]S_= ]@
MXBN^+#C8-:N)7S>SL(FKB7^,]L0LVQ-SE_9$F]6@YX! T2@4FDQ>V=N8SNFS
M&K0; D6C4&@RW64W9.I/&1TYJ]W:GK59W4!3V'PDM8P&;6*:6^>"0Y;,\O/5
MJ6!A&?'UL=G-W<T9[EY^<KER_Q*?T_5)[!)F?3#\QDMF?I2B@#T)2..3*^)+
MUF>MUQ<\7N2GC\<QYW&8_YPS;\J2S$ \?XIC_G*1#; Y\=[]'U!+ P04
M" !YK))9U0_T264&  ":,   &0   'AL+W=O<FMS:&5E=',O<VAE970Y,BYX
M;6RU6VUOVS80_BN$5VPML,8BJ1<K2PPX9K8579/"3K</Q3XH-F,+E25/DN,.
MV(\?]1+1I!DF=BY?8DN^>\@[Z3D]1S%GVRS_5BPY+]'W59(6Y[UE6:Y/^_UB
MMN2KJ#C)UCP5O]QE^2HJQ6&^Z!?KG$?SVFF5](GC^/U5%*>]X5E][G,^/,LV
M91*G_'..BLUJ%>7_7O DVY[W<._AQ"1>+,OJ1']XMHX6?,K++^O/N3CJ=RCS
M>,73(LY2E/.[\]X(GS+7J1QJBS]COBUVOJ,JE-LL^U8=?)B?]YQJ1CSAL[*"
MB,3'/1_S)*F0Q#S^:4%[W9B5X^[W!_1?Z^!%,+=1P<=9\E<\+Y?GO4$/S?E=
MM$G*2;;]G;<!>17>+$N*^B_:MK9.#\TV19FM6F<Q@U6<-I_1]S81.P[8?\2!
MM Y$=W ?<:"M WVN@]LZN'5FFE#J/+"HC(9G>;9%>64MT*HO=3)K;Q%^G%;7
M?5KFXM=8^)7#R8?IQRD:73$TOKX:7U[=3$8W'ZZOIN@MXV44)\4[]!Y]F3+T
M]LT[] ;%*;I99ILB2N?%6;\4$ZA@^K-VL(MF,/+(8)B@3UE:+@MTF<[Y7 7H
MBYEWTR</T[\@5L3K67F"*/X9$8>XA@F-G^].#>[L^>[$$@WM+@:M\>@C>+_Q
M;)%'ZV4\BQ(T$C0NT-?1;5'F@AU_F]+=P+EFN*IDG!;K:,;/>Z(F%#R_Y[WA
MCS]@W_G%E"I(, 8$IJ31[=+HVM"'?V3IXGTBRLD<C8J"E\8[M8'P:HBJ.-X/
M ]<C7G#6O]]-BL$,^YAZJAFS3NC(<+TN7,\:[I5X.CP>9^/K[P2 W8$3>*$6
MJ,&.!)[O:';,.I<C(_6[2'UKI.-EG$;HZR>^NN6YD1!6_T,) 0G&@,"4O 5=
MW@+8NA) IA$2C &!*6D<=&D<O+RN#/9X1 2+ J+1S6#FAE0O/\PZH2/##;MP
MPQ?4E7 O !J$KN]H<1K,<.#N517K3(Z,$SM2 SG62"\WN1#22(@:=%TN>6XM
M,7:L0\D!BL:@T-0\[FA)#%MG6CRH7$*B,2@T-9=$YI*\O-BT&+OT"ARL<]!D
M14)7HZ!]/L?&*Z4OMDK")ZI-Z[P;PGN7[ 5JL"(XT,6:?2;'1BK5*;;+TR]I
M7(JK.BVCDA?V4@,D*]OL0*(Q*#0UB5+S8@^XU  )US:7D&@,"DW-I535V"ZK
MGU=J?$,CX?K4U3EHLG,"2G42OH8@QE(18ZM2?*K<!/OR# >#<*_@[-OAP2#
M1 _V-60KEKH5VX7KQTP0Q%YI@(1FFQ9(- :%IB9/JF < E<:(#';YA(2C4&A
MJ8MU4F@3N]!^5J5I,=2E".I3K)'/9(=#EPXT\MGG=&S,4A03JU!\HM*TSFJ#
MY'FAO@YEL",#$2W6@WT-U4JD:B5VU7H3Q=LHM98:.\*A] !%8U!H:O:D!B;
MZ[\$= $8%(U!H:FYE"J; "P"MQCJ<YZ&>QV4P0Z'(<6ZJ+'/Z=B8I2@F+UD)
M;IUWU[(]?T"HOC1EL','84!T46.?S+'!2M5*[*IU-)MEF[0LT(3/>'P?W2:\
MJSOH/S2NWYWQ'(VS=,93P:'Z/>,D+KX9S4;VH@6ZL R*QJ#0U.L@E32Q+R[+
M##87Y*F2!;JV#(K&H-#43$J93NPR_2&3/Q5HS?/JIHT6'&5W*!6\CAYN][R[
MW?LYO^?IAAO3W P5[I#8.<'A'M<;LX%B1O9$Q6LH<"(5.+$O1 ,S_<+.=%#U
M#HK&H-#4E]-2O5,'DND4=*$<%(U!H:F9E#T!M?<$D$QOA]*8[OH:TULSE>DZ
MT>W3/C8MLGN@]NYATD3Y>H]Q^_@'WY*@O0<4FIK[G:TG]M[C4'+#;CV!W7OR
M&IT'E9T'M7<>H.1V3:SU=&X;K?07/$]AJ>'*IH/:FPX TMJ?R/;Q#[[50%?N
MH=#4W,L>B/J@I 7M8D#1&!2:FDG9Q5#[^P!0T@8FHNG2VVRE<]9HA!_AK.PT
MJ+W3 .#LV,Y9T/<)H&@,"DW-O>QFJ/U]PJ&<!>U'0-$8%)JZRU/V(Z[];0(D
M9]NA5*+IVY3&1JN]54 SEOZ@[>]LVA9!+.K-[P6J9]UL@.[.=AOL1_6V<NW\
M!3YES39Y"=/LVO\4Y8LX+5#"[P2D<Q*(IU7>;(1O#LIL76\-O\U*D<GZZY)'
M<YY7!N+WNRPK'PZJ ;I_1QC^#U!+ P04    " !YK))939;T#X(#  #Q#
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
M\.-6P[P! XL#D5Z6:WRW\0K970?8GNZJ$&RE>"5B*\5S#8@[;\!($O=N8W&
M@>T"5CL0WQT':LK-B2+85<P;=@?C2))@"-2BNT;C&,E.#%_W_F!W210EB1L!
MS.T@BC $[D8<P1R !PR)(O,>W'H?!<OW5+#ZO^W@+U!+ P04    " !YK))9
MEXJ[',     3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S
M9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X
M 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<UYVE/=LO
M3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A(E@6FD7)
MTZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0
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
M];8">MO)CVT!O2WUM@)Z6^IM!?2VU-L*Z&VIMQ70VU)O*Z"WI=Y60&]+O:V
MWHYZ.P&]'?5V GH[ZNT$]':3S1(!O1WU=@)Z.^KM!/1VU-L)Z.VHMQ/0VU%O
M)Z"WH]Y.0&]/O;V WIYZ>P&]/?7V GI[ZNT%]/:3S6X!O3WU]@)Z>^KM!?3V
MU-L+Z.VIMQ?0VU-O+Z!WH-Y!0.] O8. WH%Z!P&] _4. GH'ZAT$] Z3/RL%
M] [4.PCH':AW$- [4.\@H'>@WD% [TB]HX#>D7I' ;TC]8X">D?J'07TCM0[
M"N@=J7<4T#M.#IL(Z!VI=Q30.U+O**!WI-Y10.]$O9. WHEZ)P&]$_5. GHG
MZIT$]$[4.PGHG:AW$M [4>\DH'>:'!84T#M1[R2@=Z+>24#O3+VS@-Z9>F<!
MO3/US@)Z9^J=!?3.U#L+Z)VI=Q;0.U/O+*!WIMY90.\\.>PMH'>FWEE [T*]
MBX#>A7H7 ;T+]2X">A?J703T+M2[".A=J'?Y3KV'\?-0AUO/UYK/_TZJQ\MW
MZ^WQU^77Q<D+=<6YO:\8GOX"4$L#!!0    ( 'FLDEDJHF7Z20(  !4V   3
M    6T-O;G1E;G1?5'EP97-=+GAM;,W;36[;,!"&X:L8V@86(THDI2+.INVV
MS:(74"4Z%JP_D$SJW+ZTG 1HD1H-7*#OQH)-<KX1!WAVOOGV-%N_.@S]Z#?)
M+H3Y@Q"^V=FA]NDTVS&N;"<WU"%^=?=BKIM]?6^%O+[6HIG&8,>P#L<:R>W-
M)[NM'_JP^GR(/_MN&C>)L[U/5A]/&X]9FZ2>Y[YKZA#7Q>/8_I:R?DY(X\EE
MC]]UL[^*&Q+Q9L)QY<\!S^>^/EKGNM:N[FH7OM1#W"4.O?#AJ;<^/5_BC1ZG
M[;9K;#LU#T,\DOK9V;KU.VO#T*>GHE?GDT.\87OZS"[.7\J<"XP[[]PT^S@Q
M9]\?]S*2X^GU' M9%[KSK_B:&$M?_'[V..W6MG^9':_WQ^3VRSR\6!Z7W_&O
M,WZM_\X^)*2/'-)' >E#0?K0D#X,I(\2TD<%Z2.[IC1"$36CD)I13,THJ&84
M53,*JQG%U8P":T:155)DE119)45629%54F25%%DE159)D5529)4467.*K#E%
MUIPB:TZ1-:?(FE-DS2FRYA19<XJL.476@B)K09&UH,A:4&0M*+(6%%D+BJP%
M1=:"(FM!D5519%44615%5D6155%D5119%45619%54615%%DU159-D5539-44
M635%5DV155-DU119-45639'54&0U%%D-159#D=509#4460U%5D.1U5!D-119
M2XJL)476DB)K29&UI,A:4F0M*;*6%%E+BJPE1=:*(FM%D;6BR%I19*THLE;_
M4];OT[3_Q_'+,QWJ;GS)%\N_P6Y_ E!+ 0(4 Q0    ( 'FLDED'04UB@0
M +$    0              "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#
M%     @ >:R265%'[YGO    *P(  !$              ( !KP   &1O8U!R
M;W!S+V-O<F4N>&UL4$L! A0#%     @ >:R269E<G",0!@  G"<  !,
M         ( !S0$  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    " !Y
MK))9%"] KY('  #?,0  &               @($."   >&PO=V]R:W-H965T
M<R]S:&5E=#$N>&UL4$L! A0#%     @ >:R2677_ZLPW!@  5AD  !@
M         ("!U@\  'AL+W=O<FMS:&5E=',O<VAE970R+GAM;%!+ 0(4 Q0
M   ( 'FLDED/&BT/,@,  -8+   8              " @4,6  !X;"]W;W)K
M<VAE971S+W-H965T,RYX;6Q02P$"% ,4    " !YK))9]YU2:: &  #?'
M&               @(&K&0  >&PO=V]R:W-H965T<R]S:&5E=#0N>&UL4$L!
M A0#%     @ >:R269;LGQO. P  4PT  !@              ("!@2   'AL
M+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0    ( 'FLDEGF:.%,?P(
M -L&   8              " @84D  !X;"]W;W)K<VAE971S+W-H965T-BYX
M;6Q02P$"% ,4    " !YK))9+%"SY>P'  "W-0  &               @($Z
M)P  >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L! A0#%     @ >:R2631X
MM:AI"   ="<  !@              ("!7"\  'AL+W=O<FMS:&5E=',O<VAE
M970X+GAM;%!+ 0(4 Q0    ( 'FLDEG6R=7DAR4  /!R   8
M  " @?LW  !X;"]W;W)K<VAE971S+W-H965T.2YX;6Q02P$"% ,4    " !Y
MK))9DJMCBY\"  #/!0  &0              @(&X70  >&PO=V]R:W-H965T
M<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( 'FLDEDXK%(]%P,  )D&   9
M          " @8Y@  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL4$L! A0#
M%     @ >:R260+6,(QD @  1 4  !D              ("!W&,  'AL+W=O
M<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4    " !YK))9R<6,J?P#  #K
M"   &0              @(%W9@  >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM
M;%!+ 0(4 Q0    ( 'FLDEEH2_CDNP0  +\*   9              " @:IJ
M  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L! A0#%     @ >:R2625I
M#[H( P  @08  !D              ("!G&\  'AL+W=O<FMS:&5E=',O<VAE
M970Q-2YX;6Q02P$"% ,4    " !YK))9526 SZT(  ";%P  &0
M    @(';<@  >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;%!+ 0(4 Q0    (
M 'FLDEG2LV&RN@(  /,%   9              " @;][  !X;"]W;W)K<VAE
M971S+W-H965T,3<N>&UL4$L! A0#%     @ >:R269+JXJ83!@  \0T  !D
M             ("!L'X  'AL+W=O<FMS:&5E=',O<VAE970Q."YX;6Q02P$"
M% ,4    " !YK))99BVF1&H%  #Y#0  &0              @('ZA   >&PO
M=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    ( 'FLDEFM2,@)V D
M ' 9   9              " @9N*  !X;"]W;W)K<VAE971S+W-H965T,C N
M>&UL4$L! A0#%     @ >:R26:P/R0=] P  HP<  !D              ("!
MJI0  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q02P$"% ,4    " !YK))9
MP Z:#*L,  "U(   &0              @(%>F   >&PO=V]R:W-H965T<R]S
M:&5E=#(R+GAM;%!+ 0(4 Q0    ( 'FLDEG",S[P(@0  .T)   9
M      " @4"E  !X;"]W;W)K<VAE971S+W-H965T,C,N>&UL4$L! A0#%
M  @ >:R266=FDD'Q P  C0@  !D              ("!F:D  'AL+W=O<FMS
M:&5E=',O<VAE970R-"YX;6Q02P$"% ,4    " !YK))9U@+Z%8T#  #^"
M&0              @('!K0  >&PO=V]R:W-H965T<R]S:&5E=#(U+GAM;%!+
M 0(4 Q0    ( 'FLDED2;B\'H 8  &T/   9              " @86Q  !X
M;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L! A0#%     @ >:R26;FE?E%.
M P  5 <  !D              ("!7+@  'AL+W=O<FMS:&5E=',O<VAE970R
M-RYX;6Q02P$"% ,4    " !YK))9UD4&^D\$  !&"@  &0
M@('ANP  >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM;%!+ 0(4 Q0    ( 'FL
MDEGL^SJ&4@,  ($'   9              " @6?   !X;"]W;W)K<VAE971S
M+W-H965T,CDN>&UL4$L! A0#%     @ >:R26:F6^S9< @  D 8  !D
M         ("!\,,  'AL+W=O<FMS:&5E=',O<VAE970S,"YX;6Q02P$"% ,4
M    " !YK))9G+&YDT8E   3>@  &0              @(&#Q@  >&PO=V]R
M:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    ( 'FLDEGC=U!92 (  .D$
M   9              " @0#L  !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL
M4$L! A0#%     @ >:R261HEI9$L P  "P<  !D              ("!?^X
M 'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q02P$"% ,4    " !YK))9>#"!
M&O4%  !9$0  &0              @('B\0  >&PO=V]R:W-H965T<R]S:&5E
M=#,T+GAM;%!+ 0(4 Q0    ( 'FLDEDQ/BDEM0,  " (   9
M  " @0[X  !X;"]W;W)K<VAE971S+W-H965T,S4N>&UL4$L! A0#%     @
M>:R26=YXYUE[ P  X0<  !D              ("!^OL  'AL+W=O<FMS:&5E
M=',O<VAE970S-BYX;6Q02P$"% ,4    " !YK))9GN,-[14#  #N!@  &0
M            @(&L_P  >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;%!+ 0(4
M Q0    ( 'FLDEG<I<UTF0(  +4%   9              " @?@" 0!X;"]W
M;W)K<VAE971S+W-H965T,S@N>&UL4$L! A0#%     @ >:R2664<DIT; P
MA 8  !D              ("!R 4! 'AL+W=O<FMS:&5E=',O<VAE970S.2YX
M;6Q02P$"% ,4    " !YK))9U*SYB&8"   X!0  &0              @($:
M"0$ >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;%!+ 0(4 Q0    ( 'FLDED$
M@E_)- 0  !T*   9              " @;<+ 0!X;"]W;W)K<VAE971S+W-H
M965T-#$N>&UL4$L! A0#%     @ >:R267BU1=TL!   Y@D  !D
M     ("!(A ! 'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6Q02P$"% ,4
M" !YK))9H& &O@<#  !M!@  &0              @(&%% $ >&PO=V]R:W-H
M965T<R]S:&5E=#0S+GAM;%!+ 0(4 Q0    ( 'FLDEGVJ]@4S0,  !0*   9
M              " @<,7 0!X;"]W;W)K<VAE971S+W-H965T-#0N>&UL4$L!
M A0#%     @ >:R26;Y/I;6Z @  X04  !D              ("!QQL! 'AL
M+W=O<FMS:&5E=',O<VAE970T-2YX;6Q02P$"% ,4    " !YK))9K=M-^1P%
M  #:"P  &0              @(&X'@$ >&PO=V]R:W-H965T<R]S:&5E=#0V
M+GAM;%!+ 0(4 Q0    ( 'FLDEFW%\I1^@4  !H1   9              "
M@0LD 0!X;"]W;W)K<VAE971S+W-H965T-#<N>&UL4$L! A0#%     @ >:R2
M6>,[NDUI!P  7Q0  !D              ("!/"H! 'AL+W=O<FMS:&5E=',O
M<VAE970T."YX;6Q02P$"% ,4    " !YK))9SOV)HU )  "(&P  &0
M        @('<,0$ >&PO=V]R:W-H965T<R]S:&5E=#0Y+GAM;%!+ 0(4 Q0
M   ( 'FLDEF]7(K53@0  -H*   9              " @6,[ 0!X;"]W;W)K
M<VAE971S+W-H965T-3 N>&UL4$L! A0#%     @ >:R26>!5S.DI P  TP8
M !D              ("!Z#\! 'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6Q0
M2P$"% ,4    " !YK))9SARY*IL#  "W"   &0              @(%(0P$
M>&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;%!+ 0(4 Q0    ( 'FLDED%-[[C
M;@0  .4,   9              " @1I' 0!X;"]W;W)K<VAE971S+W-H965T
M-3,N>&UL4$L! A0#%     @ >:R26=Q\^1PI P  %P<  !D
M ("!OTL! 'AL+W=O<FMS:&5E=',O<VAE970U-"YX;6Q02P$"% ,4    " !Y
MK))9))$8"YL"  #7!0  &0              @($?3P$ >&PO=V]R:W-H965T
M<R]S:&5E=#4U+GAM;%!+ 0(4 Q0    ( 'FLDEG A'5R*P,  "T.   9
M          " @?%1 0!X;"]W;W)K<VAE971S+W-H965T-38N>&UL4$L! A0#
M%     @ >:R26<MOT24I @  600  !D              ("!4U4! 'AL+W=O
M<FMS:&5E=',O<VAE970U-RYX;6Q02P$"% ,4    " !YK))9)AC$CU,"
M!@  &0              @(&S5P$ >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM
M;%!+ 0(4 Q0    ( 'FLDEF',&ZJ_P,  )\1   9              " @3U:
M 0!X;"]W;W)K<VAE971S+W-H965T-3DN>&UL4$L! A0#%     @ >:R260*U
M$H4T P  K0\  !D              ("!<UX! 'AL+W=O<FMS:&5E=',O<VAE
M970V,"YX;6Q02P$"% ,4    " !YK))9L<*P=7T$  #Z&0  &0
M    @('>80$ >&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;%!+ 0(4 Q0    (
M 'FLDEF\8P*MG (  -0&   9              " @9)F 0!X;"]W;W)K<VAE
M971S+W-H965T-C(N>&UL4$L! A0#%     @ >:R2644O/*-< @  X 0  !D
M             ("!96D! 'AL+W=O<FMS:&5E=',O<VAE970V,RYX;6Q02P$"
M% ,4    " !YK))94/ 6#VT"  "(!0  &0              @('X:P$ >&PO
M=V]R:W-H965T<R]S:&5E=#8T+GAM;%!+ 0(4 Q0    ( 'FLDEF3$Y#ZCP(
M .0&   9              " @9QN 0!X;"]W;W)K<VAE971S+W-H965T-C4N
M>&UL4$L! A0#%     @ >:R262_> =NK P  \0H  !D              ("!
M8G$! 'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6Q02P$"% ,4    " !YK))9
M3L51C78"  "T!@  &0              @(%$=0$ >&PO=V]R:W-H965T<R]S
M:&5E=#8W+GAM;%!+ 0(4 Q0    ( 'FLDEE6VHU_P@4  '4E   9
M      " @?%W 0!X;"]W;W)K<VAE971S+W-H965T-C@N>&UL4$L! A0#%
M  @ >:R26>C/$=TM!0  L2,  !D              ("!ZGT! 'AL+W=O<FMS
M:&5E=',O<VAE970V.2YX;6Q02P$"% ,4    " !YK))9F)&1EGL$  #,%
M&0              @(%.@P$ >&PO=V]R:W-H965T<R]S:&5E=#<P+GAM;%!+
M 0(4 Q0    ( 'FLDEE"HK,X90,  ,,*   9              " @0"( 0!X
M;"]W;W)K<VAE971S+W-H965T-S$N>&UL4$L! A0#%     @ >:R26<GCB4-5
M!   TA   !D              ("!G(L! 'AL+W=O<FMS:&5E=',O<VAE970W
M,BYX;6Q02P$"% ,4    " !YK))93#\2?O(%  !P-P  &0
M@($HD $ >&PO=V]R:W-H965T<R]S:&5E=#<S+GAM;%!+ 0(4 Q0    ( 'FL
MDED(6![J&0,  .@*   9              " @5&6 0!X;"]W;W)K<VAE971S
M+W-H965T-S0N>&UL4$L! A0#%     @ >:R2688!"$F8 P  /A   !D
M         ("!H9D! 'AL+W=O<FMS:&5E=',O<VAE970W-2YX;6Q02P$"% ,4
M    " !YK))9?K/M.P$#  !!"0  &0              @(%PG0$ >&PO=V]R
M:W-H965T<R]S:&5E=#<V+GAM;%!+ 0(4 Q0    ( 'FLDEDPG_R>EP(  '\'
M   9              " @:B@ 0!X;"]W;W)K<VAE971S+W-H965T-S<N>&UL
M4$L! A0#%     @ >:R2633"X^_B @  K@@  !D              ("!=J,!
M 'AL+W=O<FMS:&5E=',O<VAE970W."YX;6Q02P$"% ,4    " !YK))9U4_D
MR@D'  "K-P  &0              @(&/I@$ >&PO=V]R:W-H965T<R]S:&5E
M=#<Y+GAM;%!+ 0(4 Q0    ( 'FLDEF_^T1EF 0  )@;   9
M  " @<^M 0!X;"]W;W)K<VAE971S+W-H965T.# N>&UL4$L! A0#%     @
M>:R265L; K9/!   U1,  !D              ("!GK(! 'AL+W=O<FMS:&5E
M=',O<VAE970X,2YX;6Q02P$"% ,4    " !YK))9:1J$",8#  # $0  &0
M            @($DMP$ >&PO=V]R:W-H965T<R]S:&5E=#@R+GAM;%!+ 0(4
M Q0    ( 'FLDEF'X&>,$0,  )L)   9              " @2&[ 0!X;"]W
M;W)K<VAE971S+W-H965T.#,N>&UL4$L! A0#%     @ >:R26>3[@ +R P
ML0\  !D              ("!:;X! 'AL+W=O<FMS:&5E=',O<VAE970X-"YX
M;6Q02P$"% ,4    " !YK))9-Y?_8> 1  "=L0  &0              @(&2
MP@$ >&PO=V]R:W-H965T<R]S:&5E=#@U+GAM;%!+ 0(4 Q0    ( 'FLDED3
M0Y[*?@,  "D-   9              " @:G4 0!X;"]W;W)K<VAE971S+W-H
M965T.#8N>&UL4$L! A0#%     @ >:R262\8ABUP"   Z2X  !D
M     ("!7M@! 'AL+W=O<FMS:&5E=',O<VAE970X-RYX;6Q02P$"% ,4
M" !YK))9H*\*5ZL)  #\4@  &0              @($%X0$ >&PO=V]R:W-H
M965T<R]S:&5E=#@X+GAM;%!+ 0(4 Q0    ( 'FLDEGI=)?A[P0  )T6   9
M              " @>?J 0!X;"]W;W)K<VAE971S+W-H965T.#DN>&UL4$L!
M A0#%     @ >:R260:5'JSN @  E0@  !D              ("!#? ! 'AL
M+W=O<FMS:&5E=',O<VAE970Y,"YX;6Q02P$"% ,4    " !YK))9YX/2^4@&
M  #]+@  &0              @($R\P$ >&PO=V]R:W-H965T<R]S:&5E=#DQ
M+GAM;%!+ 0(4 Q0    ( 'FLDEG5#_1)908  )HP   9              "
M@;'Y 0!X;"]W;W)K<VAE971S+W-H965T.3(N>&UL4$L! A0#%     @ >:R2
M64V6] ^" P  \0P  !D              ("!30 " 'AL+W=O<FMS:&5E=',O
M<VAE970Y,RYX;6Q02P$"% ,4    " !YK))9N/SR,XD%  !7+0  &0
M        @($&! ( >&PO=V]R:W-H965T<R]S:&5E=#DT+GAM;%!+ 0(4 Q0
M   ( 'FLDEDZ(":?2 4  !$E   9              " @<8) @!X;"]W;W)K
M<VAE971S+W-H965T.34N>&UL4$L! A0#%     @ >:R262JX'L!> P  Q!4
M  T              ( !10\" 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " !Y
MK))9EXJ[',     3 @  "P              @ '.$@( 7W)E;',O+G)E;'-0
M2P$"% ,4    " !YK))9^=:&Z"P'   &/@  #P              @ &W$P(
M>&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ >:R26?HPA&BY @  Y#<  !H
M             ( !$!L" 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L!
M A0#%     @ >:R262JB9?I) @  %38  !,              ( ! 1X" %M#
G;VYT96YT7U1Y<&5S72YX;6Q02P4&     &< 9P!('   >R "

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>112
<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>113
<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>115
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.24.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>302</ContextCount>
  <ElementCount>467</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>84</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000100 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>010000 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>010100 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>020000 - Statement - Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedStatementsOfIncome</Role>
      <ShortName>Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>030000 - Statement - Consolidated Statements of Comprehensive Income (Loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Loss)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>030100 - Statement - Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>040000 - Statement - Consolidated Statements of Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedStatementsOfEquity</Role>
      <ShortName>Consolidated Statements of Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>050000 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>060100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>060200 - Disclosure - ACCOUNTS RECEIVABLE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccountsReceivable</Role>
      <ShortName>ACCOUNTS RECEIVABLE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>060300 - Disclosure - OTHER CURRENT ASSETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherCurrentAssets</Role>
      <ShortName>OTHER CURRENT ASSETS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>060400 - Disclosure - INVENTORIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/Inventories</Role>
      <ShortName>INVENTORIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>060500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PropertyPlantAndEquipmentNet</Role>
      <ShortName>PROPERTY, PLANT AND EQUIPMENT, NET</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>060600 - Disclosure - PDMCX JOINT VENTURE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PdmcxJointVenture</Role>
      <ShortName>PDMCX JOINT VENTURE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>060700 - Disclosure - ACCRUED LIABILITIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccruedLiabilities</Role>
      <ShortName>ACCRUED LIABILITIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>060800 - Disclosure - DEBT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/Debt</Role>
      <ShortName>DEBT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>060900 - Disclosure - OTHER LIABILITIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherLiabilities</Role>
      <ShortName>OTHER LIABILITIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>061000 - Disclosure - REVENUE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/Revenue</Role>
      <ShortName>REVENUE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>061100 - Disclosure - LEASES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/Leases</Role>
      <ShortName>LEASES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>061200 - Disclosure - SHARE-BASED COMPENSATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SharebasedCompensation</Role>
      <ShortName>SHARE-BASED COMPENSATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>061300 - Disclosure - EMPLOYEE RETIREMENT PLANS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/EmployeeRetirementPlans</Role>
      <ShortName>EMPLOYEE RETIREMENT PLANS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>061400 - Disclosure - INCOME TAXES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/IncomeTaxes</Role>
      <ShortName>INCOME TAXES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>061500 - Disclosure - EARNINGS PER SHARE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/EarningsPerShare</Role>
      <ShortName>EARNINGS PER SHARE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>061600 - Disclosure - COMMITMENTS AND CONTINGENCIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/CommitmentsAndContingencies</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>061700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent</Role>
      <ShortName>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>061800 - Disclosure - RISKS AND CONCENTRATIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RisksAndConcentrations</Role>
      <ShortName>RISKS AND CONCENTRATIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>061900 - Disclosure - RELATED PARTY TRANSACTIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RelatedPartyTransactions</Role>
      <ShortName>RELATED PARTY TRANSACTIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>062000 - Disclosure - FAIR VALUE MEASUREMENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/FairValueMeasurements</Role>
      <ShortName>FAIR VALUE MEASUREMENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>062100 - Disclosure - SHARE REPURCHASE PROGRAMS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ShareRepurchasePrograms</Role>
      <ShortName>SHARE REPURCHASE PROGRAMS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>062200 - Disclosure - INSIDER TRADING ARRANGEMENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/InsiderTradingArrangements</Role>
      <ShortName>INSIDER TRADING ARRANGEMENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>070100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>070600 - Disclosure - PDMCX JOINT VENTURE (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PdmcxJointVenturePolicies</Role>
      <ShortName>PDMCX JOINT VENTURE (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>071000 - Disclosure - REVENUE (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RevenuePolicies</Role>
      <ShortName>REVENUE (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>071200 - Disclosure - SHARE-BASED COMPENSATION (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SharebasedCompensationPolicies</Role>
      <ShortName>SHARE-BASED COMPENSATION (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>071400 - Disclosure - INCOME TAXES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/IncomeTaxesPolicies</Role>
      <ShortName>INCOME TAXES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>072000 - Disclosure - FAIR VALUE MEASUREMENTS (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/FairValueMeasurementsPolicies</Role>
      <ShortName>FAIR VALUE MEASUREMENTS (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>080100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>080200 - Disclosure - ACCOUNTS RECEIVABLE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccountsReceivableTables</Role>
      <ShortName>ACCOUNTS RECEIVABLE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/AccountsReceivable</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>080300 - Disclosure - OTHER CURRENT ASSETS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherCurrentAssetsTables</Role>
      <ShortName>OTHER CURRENT ASSETS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/OtherCurrentAssets</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>080400 - Disclosure - INVENTORIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/InventoriesTables</Role>
      <ShortName>INVENTORIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/Inventories</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>080500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PropertyPlantAndEquipmentNetTables</Role>
      <ShortName>PROPERTY, PLANT AND EQUIPMENT, NET (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/PropertyPlantAndEquipmentNet</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>080600 - Disclosure - PDMCX JOINT VENTURE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PdmcxJointVentureTables</Role>
      <ShortName>PDMCX JOINT VENTURE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/PdmcxJointVenture</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>080700 - Disclosure - ACCRUED LIABILITIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccruedLiabilitiesTables</Role>
      <ShortName>ACCRUED LIABILITIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/AccruedLiabilities</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>080800 - Disclosure - DEBT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtTables</Role>
      <ShortName>DEBT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/Debt</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>080900 - Disclosure - OTHER LIABILITIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherLiabilitiesTables</Role>
      <ShortName>OTHER LIABILITIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/OtherLiabilities</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>081000 - Disclosure - REVENUE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RevenueTables</Role>
      <ShortName>REVENUE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/Revenue</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>081100 - Disclosure - LEASES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/LeasesTables</Role>
      <ShortName>LEASES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/Leases</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>081200 - Disclosure - SHARE-BASED COMPENSATION (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SharebasedCompensationTables</Role>
      <ShortName>SHARE-BASED COMPENSATION (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/SharebasedCompensation</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>081400 - Disclosure - INCOME TAXES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/IncomeTaxesTables</Role>
      <ShortName>INCOME TAXES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/IncomeTaxes</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>081500 - Disclosure - EARNINGS PER SHARE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/EarningsPerShareTables</Role>
      <ShortName>EARNINGS PER SHARE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/EarningsPerShare</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>081600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/CommitmentsAndContingenciesTables</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/CommitmentsAndContingencies</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>081700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables</Role>
      <ShortName>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>081800 - Disclosure - RISKS AND CONCENTRATIONS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RisksAndConcentrationsTables</Role>
      <ShortName>RISKS AND CONCENTRATIONS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/RisksAndConcentrations</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>082000 - Disclosure - FAIR VALUE MEASUREMENTS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/FairValueMeasurementsTables</Role>
      <ShortName>FAIR VALUE MEASUREMENTS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/FairValueMeasurements</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>082100 - Disclosure - SHARE REPURCHASE PROGRAMS (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ShareRepurchaseProgramsTables</Role>
      <ShortName>SHARE REPURCHASE PROGRAMS (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://photronics.com/role/ShareRepurchasePrograms</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>090100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>090102 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>090104 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>090106 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>090108 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>090110 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>090112 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>090114 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>090116 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails</Role>
      <ShortName>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>090200 - Disclosure - ACCOUNTS RECEIVABLE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccountsReceivableDetails</Role>
      <ShortName>ACCOUNTS RECEIVABLE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/AccountsReceivableTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>090300 - Disclosure - OTHER CURRENT ASSETS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherCurrentAssetsDetails</Role>
      <ShortName>OTHER CURRENT ASSETS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/OtherCurrentAssetsTables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>090400 - Disclosure - INVENTORIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/InventoriesDetails</Role>
      <ShortName>INVENTORIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/InventoriesTables</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>090500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PropertyPlantAndEquipmentNetDetails</Role>
      <ShortName>PROPERTY, PLANT AND EQUIPMENT, NET (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/PropertyPlantAndEquipmentNetTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>090600 - Disclosure - PDMCX JOINT VENTURE, VIE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PdmcxJointVentureVieDetails</Role>
      <ShortName>PDMCX JOINT VENTURE, VIE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>090602 - Disclosure - PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails</Role>
      <ShortName>PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>090700 - Disclosure - ACCRUED LIABILITIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/AccruedLiabilitiesDetails</Role>
      <ShortName>ACCRUED LIABILITIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/AccruedLiabilitiesTables</ParentRole>
      <Position>71</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>090800 - Disclosure - DEBT, Long-term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtLongtermDebtDetails</Role>
      <ShortName>DEBT, Long-term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>090802 - Disclosure - DEBT, Finance Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtFinanceLeasesDetails</Role>
      <ShortName>DEBT, Finance Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>090804 - Disclosure - DEBT, Xiamen Project Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtXiamenProjectLoansDetails</Role>
      <ShortName>DEBT, Xiamen Project Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>090806 - Disclosure - DEBT, Xiamen Working Capital Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails</Role>
      <ShortName>DEBT, Xiamen Working Capital Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>090808 - Disclosure - DEBT, Corporate Credit Agreement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtCorporateCreditAgreementDetails</Role>
      <ShortName>DEBT, Corporate Credit Agreement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>090812 - Disclosure - DEBT, Interest Paid for Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/DebtInterestPaidForDebtDetails</Role>
      <ShortName>DEBT, Interest Paid for Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>090900 - Disclosure - OTHER LIABILITIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/OtherLiabilitiesDetails</Role>
      <ShortName>OTHER LIABILITIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/OtherLiabilitiesTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>091000 - Disclosure - REVENUE, Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RevenueDisaggregationOfRevenueDetails</Role>
      <ShortName>REVENUE, Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>091002 - Disclosure - REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails</Role>
      <ShortName>REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>091100 - Disclosure - LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails</Role>
      <ShortName>LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>091102 - Disclosure - LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails</Role>
      <ShortName>LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>091104 - Disclosure - LEASES, Lease Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/LeasesLeaseCostDetails</Role>
      <ShortName>LEASES, Lease Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>091106 - Disclosure - LEASES, Operating and Finance Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails</Role>
      <ShortName>LEASES, Operating and Finance Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>091200 - Disclosure - SHARE-BASED COMPENSATION (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/SharebasedCompensationDetails</Role>
      <ShortName>SHARE-BASED COMPENSATION (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/SharebasedCompensationTables</ParentRole>
      <Position>85</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>091300 - Disclosure - EMPLOYEE RETIREMENT PLANS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/EmployeeRetirementPlansDetails</Role>
      <ShortName>EMPLOYEE RETIREMENT PLANS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/EmployeeRetirementPlans</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>091400 - Disclosure - INCOME TAXES, Components of Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails</Role>
      <ShortName>INCOME TAXES, Components of Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>091402 - Disclosure - INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails</Role>
      <ShortName>INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>091500 - Disclosure - EARNINGS PER SHARE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/EarningsPerShareDetails</Role>
      <ShortName>EARNINGS PER SHARE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/EarningsPerShareTables</ParentRole>
      <Position>89</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>091600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/CommitmentsAndContingenciesDetails</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/CommitmentsAndContingenciesTables</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>091700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails</Role>
      <ShortName>CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>091800 - Disclosure - RISKS AND CONCENTRATIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RisksAndConcentrationsDetails</Role>
      <ShortName>RISKS AND CONCENTRATIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/RisksAndConcentrationsTables</ParentRole>
      <Position>92</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>091900 - Disclosure - RELATED PARTY TRANSACTIONS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/RelatedPartyTransactionsDetails</Role>
      <ShortName>RELATED PARTY TRANSACTIONS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/RelatedPartyTransactions</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>092000 - Disclosure - FAIR VALUE MEASUREMENTS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/FairValueMeasurementsDetails</Role>
      <ShortName>FAIR VALUE MEASUREMENTS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/FairValueMeasurementsTables</ParentRole>
      <Position>94</Position>
    </Report>
    <Report instance="ef20035608_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>092100 - Disclosure - SHARE REPURCHASE PROGRAMS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://photronics.com/role/ShareRepurchaseProgramsDetails</Role>
      <ShortName>SHARE REPURCHASE PROGRAMS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://photronics.com/role/ShareRepurchaseProgramsTables</ParentRole>
      <Position>95</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" isDefinitelyFs="true" isUsgaap="true" original="ef20035608_10k.htm">ef20035608_10k.htm</File>
    <File>plab-20241031.xsd</File>
    <File>plab-20241031_cal.xml</File>
    <File>plab-20241031_def.xml</File>
    <File>plab-20241031_lab.xml</File>
    <File>plab-20241031_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image00002.jpg</File>
    <File>image00003.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="5">http://fasb.org/srt/2024</BaseTaxonomy>
    <BaseTaxonomy items="1203">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>118
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "ef20035608_10k.htm": {
   "nsprefix": "plab",
   "nsuri": "http://photronics.com/20241031",
   "dts": {
    "inline": {
     "local": [
      "ef20035608_10k.htm"
     ]
    },
    "schema": {
     "local": [
      "plab-20241031.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/2004/ref-2004-08-10.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/2023/calculation-1.1.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/currency/2024/currency-2024.xsd",
      "https://xbrl.sec.gov/cyd/2024/cyd-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/exch/2024/exch-2024.xsd",
      "https://xbrl.sec.gov/naics/2024/naics-2024.xsd",
      "https://xbrl.sec.gov/sic/2024/sic-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "plab-20241031_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "plab-20241031_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "plab-20241031_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "plab-20241031_pre.xml"
     ]
    }
   },
   "keyStandard": 419,
   "keyCustom": 48,
   "axisStandard": 24,
   "axisCustom": 0,
   "memberStandard": 54,
   "memberCustom": 29,
   "hidden": {
    "total": 41,
    "http://fasb.org/us-gaap/2024": 26,
    "http://xbrl.sec.gov/dei/2024": 6,
    "http://photronics.com/20241031": 9
   },
   "contextCount": 302,
   "entityCount": 1,
   "segmentCount": 84,
   "elementCount": 738,
   "unitCount": 7,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 1203,
    "http://xbrl.sec.gov/dei/2024": 37,
    "http://fasb.org/srt/2024": 5,
    "http://xbrl.sec.gov/ecd/2024": 4
   },
   "report": {
    "R1": {
     "role": "http://photronics.com/role/DocumentAndEntityInformation",
     "longName": "000100 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://photronics.com/role/ConsolidatedBalanceSheets",
     "longName": "010000 - Statement - Consolidated Balance Sheets",
     "shortName": "Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:ShortTermInvestments",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical",
     "longName": "010100 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "U003",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R4": {
     "role": "http://photronics.com/role/ConsolidatedStatementsOfIncome",
     "longName": "020000 - Statement - Consolidated Statements of Income",
     "shortName": "Consolidated Statements of Income",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
     "longName": "030000 - Statement - Consolidated Statements of Comprehensive Income (Loss)",
     "shortName": "Consolidated Statements of Comprehensive Income (Loss)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical",
     "longName": "030100 - Statement - Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)",
     "shortName": "Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherComprehensiveIncomeLossTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R7": {
     "role": "http://photronics.com/role/ConsolidatedStatementsOfEquity",
     "longName": "040000 - Statement - Consolidated Statements of Equity",
     "shortName": "Consolidated Statements of Equity",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c20211031_StatementEquityComponentsAxis_CommonStockMember",
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20211031_StatementEquityComponentsAxis_CommonStockMember",
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://photronics.com/role/ConsolidatedStatementsOfCashFlows",
     "longName": "050000 - Statement - Consolidated Statements of Cash Flows",
     "shortName": "Consolidated Statements of Cash Flows",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R9": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPolicies",
     "longName": "060100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://photronics.com/role/AccountsReceivable",
     "longName": "060200 - Disclosure - ACCOUNTS RECEIVABLE",
     "shortName": "ACCOUNTS RECEIVABLE",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://photronics.com/role/OtherCurrentAssets",
     "longName": "060300 - Disclosure - OTHER CURRENT ASSETS",
     "shortName": "OTHER CURRENT ASSETS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherCurrentAssetsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherCurrentAssetsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://photronics.com/role/Inventories",
     "longName": "060400 - Disclosure - INVENTORIES",
     "shortName": "INVENTORIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://photronics.com/role/PropertyPlantAndEquipmentNet",
     "longName": "060500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET",
     "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://photronics.com/role/PdmcxJointVenture",
     "longName": "060600 - Disclosure - PDMCX JOINT VENTURE",
     "shortName": "PDMCX JOINT VENTURE",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:VariableInterestEntityDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:VariableInterestEntityDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://photronics.com/role/AccruedLiabilities",
     "longName": "060700 - Disclosure - ACCRUED LIABILITIES",
     "shortName": "ACCRUED LIABILITIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://photronics.com/role/Debt",
     "longName": "060800 - Disclosure - DEBT",
     "shortName": "DEBT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://photronics.com/role/OtherLiabilities",
     "longName": "060900 - Disclosure - OTHER LIABILITIES",
     "shortName": "OTHER LIABILITIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://photronics.com/role/Revenue",
     "longName": "061000 - Disclosure - REVENUE",
     "shortName": "REVENUE",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://photronics.com/role/Leases",
     "longName": "061100 - Disclosure - LEASES",
     "shortName": "LEASES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://photronics.com/role/SharebasedCompensation",
     "longName": "061200 - Disclosure - SHARE-BASED COMPENSATION",
     "shortName": "SHARE-BASED COMPENSATION",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://photronics.com/role/EmployeeRetirementPlans",
     "longName": "061300 - Disclosure - EMPLOYEE RETIREMENT PLANS",
     "shortName": "EMPLOYEE RETIREMENT PLANS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://photronics.com/role/IncomeTaxes",
     "longName": "061400 - Disclosure - INCOME TAXES",
     "shortName": "INCOME TAXES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://photronics.com/role/EarningsPerShare",
     "longName": "061500 - Disclosure - EARNINGS PER SHARE",
     "shortName": "EARNINGS PER SHARE",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://photronics.com/role/CommitmentsAndContingencies",
     "longName": "061600 - Disclosure - COMMITMENTS AND CONTINGENCIES",
     "shortName": "COMMITMENTS AND CONTINGENCIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent",
     "longName": "061700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT",
     "shortName": "CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherComprehensiveIncomeNoncontrollingInterestTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherComprehensiveIncomeNoncontrollingInterestTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://photronics.com/role/RisksAndConcentrations",
     "longName": "061800 - Disclosure - RISKS AND CONCENTRATIONS",
     "shortName": "RISKS AND CONCENTRATIONS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://photronics.com/role/RelatedPartyTransactions",
     "longName": "061900 - Disclosure - RELATED PARTY TRANSACTIONS",
     "shortName": "RELATED PARTY TRANSACTIONS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://photronics.com/role/FairValueMeasurements",
     "longName": "062000 - Disclosure - FAIR VALUE MEASUREMENTS",
     "shortName": "FAIR VALUE MEASUREMENTS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://photronics.com/role/ShareRepurchasePrograms",
     "longName": "062100 - Disclosure - SHARE REPURCHASE PROGRAMS",
     "shortName": "SHARE REPURCHASE PROGRAMS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:TreasuryStockTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:TreasuryStockTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://photronics.com/role/InsiderTradingArrangements",
     "longName": "062200 - Disclosure - INSIDER TRADING ARRANGEMENTS",
     "shortName": "INSIDER TRADING ARRANGEMENTS",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c20240729to20241031",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20240729to20241031",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "longName": "070100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://photronics.com/role/PdmcxJointVenturePolicies",
     "longName": "070600 - Disclosure - PDMCX JOINT VENTURE (Policies)",
     "shortName": "PDMCX JOINT VENTURE (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://photronics.com/role/RevenuePolicies",
     "longName": "071000 - Disclosure - REVENUE (Policies)",
     "shortName": "REVENUE (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://photronics.com/role/SharebasedCompensationPolicies",
     "longName": "071200 - Disclosure - SHARE-BASED COMPENSATION (Policies)",
     "shortName": "SHARE-BASED COMPENSATION (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "34",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:EmployeeStockPurchasePlanPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R35": {
     "role": "http://photronics.com/role/IncomeTaxesPolicies",
     "longName": "071400 - Disclosure - INCOME TAXES (Policies)",
     "shortName": "INCOME TAXES (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:UnremittedEarningsInForeignInvestmentPolicy",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:UnremittedEarningsInForeignInvestmentPolicy",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://photronics.com/role/FairValueMeasurementsPolicies",
     "longName": "072000 - Disclosure - FAIR VALUE MEASUREMENTS (Policies)",
     "shortName": "FAIR VALUE MEASUREMENTS (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "36",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueMeasurementPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueMeasurementPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables",
     "longName": "080100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "37",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://photronics.com/role/AccountsReceivableTables",
     "longName": "080200 - Disclosure - ACCOUNTS RECEIVABLE (Tables)",
     "shortName": "ACCOUNTS RECEIVABLE (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "38",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://photronics.com/role/OtherCurrentAssetsTables",
     "longName": "080300 - Disclosure - OTHER CURRENT ASSETS (Tables)",
     "shortName": "OTHER CURRENT ASSETS (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "39",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://photronics.com/role/InventoriesTables",
     "longName": "080400 - Disclosure - INVENTORIES (Tables)",
     "shortName": "INVENTORIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "40",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "role": "http://photronics.com/role/PropertyPlantAndEquipmentNetTables",
     "longName": "080500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables)",
     "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "41",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://photronics.com/role/PdmcxJointVentureTables",
     "longName": "080600 - Disclosure - PDMCX JOINT VENTURE (Tables)",
     "shortName": "PDMCX JOINT VENTURE (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "42",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "srt:ScheduleOfCondensedIncomeStatementTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "srt:ScheduleOfCondensedIncomeStatementTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://photronics.com/role/AccruedLiabilitiesTables",
     "longName": "080700 - Disclosure - ACCRUED LIABILITIES (Tables)",
     "shortName": "ACCRUED LIABILITIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "43",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherCurrentLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherCurrentLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://photronics.com/role/DebtTables",
     "longName": "080800 - Disclosure - DEBT (Tables)",
     "shortName": "DEBT (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "44",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://photronics.com/role/OtherLiabilitiesTables",
     "longName": "080900 - Disclosure - OTHER LIABILITIES (Tables)",
     "shortName": "OTHER LIABILITIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "45",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://photronics.com/role/RevenueTables",
     "longName": "081000 - Disclosure - REVENUE (Tables)",
     "shortName": "REVENUE (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "46",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://photronics.com/role/LeasesTables",
     "longName": "081100 - Disclosure - LEASES (Tables)",
     "shortName": "LEASES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "47",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://photronics.com/role/SharebasedCompensationTables",
     "longName": "081200 - Disclosure - SHARE-BASED COMPENSATION (Tables)",
     "shortName": "SHARE-BASED COMPENSATION (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "48",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://photronics.com/role/IncomeTaxesTables",
     "longName": "081400 - Disclosure - INCOME TAXES (Tables)",
     "shortName": "INCOME TAXES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "49",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://photronics.com/role/EarningsPerShareTables",
     "longName": "081500 - Disclosure - EARNINGS PER SHARE (Tables)",
     "shortName": "EARNINGS PER SHARE (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "50",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R51": {
     "role": "http://photronics.com/role/CommitmentsAndContingenciesTables",
     "longName": "081600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Tables)",
     "shortName": "COMMITMENTS AND CONTINGENCIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "51",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables",
     "longName": "081700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)",
     "shortName": "CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "52",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://photronics.com/role/RisksAndConcentrationsTables",
     "longName": "081800 - Disclosure - RISKS AND CONCENTRATIONS (Tables)",
     "shortName": "RISKS AND CONCENTRATIONS (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "53",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://photronics.com/role/FairValueMeasurementsTables",
     "longName": "082000 - Disclosure - FAIR VALUE MEASUREMENTS (Tables)",
     "shortName": "FAIR VALUE MEASUREMENTS (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "54",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://photronics.com/role/ShareRepurchaseProgramsTables",
     "longName": "082100 - Disclosure - SHARE REPURCHASE PROGRAMS (Tables)",
     "shortName": "SHARE REPURCHASE PROGRAMS (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "55",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfTreasuryStockByClassTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ScheduleOfTreasuryStockByClassTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails",
     "longName": "090100 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Business (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:NumberOfManufacturingFacilities",
      "unitRef": "U004",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:NumberOfManufacturingFacilities",
      "unitRef": "U004",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails",
     "longName": "090102 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Principles of Consolidation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "plab:PercentageOfOwnershipInterestInSubsidiaries",
      "unitRef": "U005",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "plab:PercentageOfOwnershipInterestInSubsidiaries",
      "unitRef": "U005",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R58": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails",
     "longName": "090104 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Restricted Cash (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:RestrictedCash",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R59": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails",
     "longName": "090106 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Investments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails",
     "longName": "090108 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Property, Plant and Equipment, Net (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R61": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails",
     "longName": "090110 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:CapitalizedContractCostImpairmentLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "us-gaap:CapitalizedContractCostImpairmentLoss",
       "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs",
       "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:CapitalizedContractCostImpairmentLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "us-gaap:CapitalizedContractCostImpairmentLoss",
       "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs",
       "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R62": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails",
     "longName": "090112 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Research and Development (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:ResearchAndDevelopmentExpense",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R63": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails",
     "longName": "090114 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Government Grants (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:IncreaseDecreaseInPropertyAndEquipmentNet",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:IncreaseDecreaseInPropertyAndEquipmentNet",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R64": {
     "role": "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails",
     "longName": "090116 - Disclosure - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)",
     "shortName": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES, Variable Interest Entities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember",
      "name": "us-gaap:VariableInterestEntityOwnershipPercentage",
      "unitRef": "U005",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R65": {
     "role": "http://photronics.com/role/AccountsReceivableDetails",
     "longName": "090200 - Disclosure - ACCOUNTS RECEIVABLE (Details)",
     "shortName": "ACCOUNTS RECEIVABLE (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R66": {
     "role": "http://photronics.com/role/OtherCurrentAssetsDetails",
     "longName": "090300 - Disclosure - OTHER CURRENT ASSETS (Details)",
     "shortName": "OTHER CURRENT ASSETS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R67": {
     "role": "http://photronics.com/role/InventoriesDetails",
     "longName": "090400 - Disclosure - INVENTORIES (Details)",
     "shortName": "INVENTORIES (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "67",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R68": {
     "role": "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
     "longName": "090500 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Details)",
     "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "68",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R69": {
     "role": "http://photronics.com/role/PdmcxJointVentureVieDetails",
     "longName": "090600 - Disclosure - PDMCX JOINT VENTURE, VIE (Details)",
     "shortName": "PDMCX JOINT VENTURE, VIE (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "69",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:LongTermDebtAndCapitalLeaseObligations",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember",
      "name": "us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R70": {
     "role": "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
     "longName": "090602 - Disclosure - PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details)",
     "shortName": "PDMCX JOINT VENTURE, Carrying Amounts of Assets and Liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "70",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:AssetsCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_ConsolidatedEntitiesAxis_PDMCXMember",
      "name": "us-gaap:AssetsCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R71": {
     "role": "http://photronics.com/role/AccruedLiabilitiesDetails",
     "longName": "090700 - Disclosure - ACCRUED LIABILITIES (Details)",
     "shortName": "ACCRUED LIABILITIES (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "71",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R72": {
     "role": "http://photronics.com/role/DebtLongtermDebtDetails",
     "longName": "090800 - Disclosure - DEBT, Long-term Debt (Details)",
     "shortName": "DEBT, Long-term Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "72",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:LongTermDebtAndCapitalLeaseObligations",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_DebtInstrumentAxis_FinanceLeaseMember",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R73": {
     "role": "http://photronics.com/role/DebtFinanceLeasesDetails",
     "longName": "090802 - Disclosure - DEBT, Finance Leases (Details)",
     "shortName": "DEBT, Finance Leases (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "73",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:FinanceLeaseLiability",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember",
      "name": "us-gaap:LesseeFinanceLeaseTermOfContract1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R74": {
     "role": "http://photronics.com/role/DebtXiamenProjectLoansDetails",
     "longName": "090804 - Disclosure - DEBT, Xiamen Project Loans (Details)",
     "shortName": "DEBT, Xiamen Project Loans (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "74",
     "firstAnchor": {
      "contextRef": "c20181130_DebtInstrumentAxis_ProjectLoanMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U006",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20181130_DebtInstrumentAxis_ProjectLoanMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U006",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R75": {
     "role": "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails",
     "longName": "090806 - Disclosure - DEBT, Xiamen Working Capital Loans (Details)",
     "shortName": "DEBT, Xiamen Working Capital Loans (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "75",
     "firstAnchor": {
      "contextRef": "c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R76": {
     "role": "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
     "longName": "090808 - Disclosure - DEBT, Corporate Credit Agreement (Details)",
     "shortName": "DEBT, Corporate Credit Agreement (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "76",
     "firstAnchor": {
      "contextRef": "c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember",
      "name": "us-gaap:DebtInstrumentTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember",
      "name": "us-gaap:DebtInstrumentTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R77": {
     "role": "http://photronics.com/role/DebtInterestPaidForDebtDetails",
     "longName": "090812 - Disclosure - DEBT, Interest Paid for Debt (Details)",
     "shortName": "DEBT, Interest Paid for Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "77",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:InterestPaid",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:InterestPaid",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R78": {
     "role": "http://photronics.com/role/OtherLiabilitiesDetails",
     "longName": "090900 - Disclosure - OTHER LIABILITIES (Details)",
     "shortName": "OTHER LIABILITIES (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "78",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "plab:UnrecognizedTaxBenefitNoncurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "plab:UnrecognizedTaxBenefitNoncurrent",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R79": {
     "role": "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
     "longName": "091000 - Disclosure - REVENUE, Disaggregation of Revenue (Details)",
     "shortName": "REVENUE, Disaggregation of Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "79",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R80": {
     "role": "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
     "longName": "091002 - Disclosure - REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details)",
     "shortName": "REVENUE, Contract Assets, Liabilities and Accounts Receivable (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "80",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:ContractWithCustomerLiability",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:ContractWithCustomerLiability",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R81": {
     "role": "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails",
     "longName": "091100 - Disclosure - LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details)",
     "shortName": "LEASES, Information on Operating and Finance Leases included on Balance Sheet (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "81",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R82": {
     "role": "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails",
     "longName": "091102 - Disclosure - LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)",
     "shortName": "LEASES, Future Lease Payments Under Noncancelable Operating and Finance Leases (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "82",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R83": {
     "role": "http://photronics.com/role/LeasesLeaseCostDetails",
     "longName": "091104 - Disclosure - LEASES, Lease Cost (Details)",
     "shortName": "LEASES, Lease Cost (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "83",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OperatingLeaseCost",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OperatingLeaseCost",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R84": {
     "role": "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails",
     "longName": "091106 - Disclosure - LEASES, Operating and Finance Leases (Details)",
     "shortName": "LEASES, Operating and Finance Leases (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "84",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R85": {
     "role": "http://photronics.com/role/SharebasedCompensationDetails",
     "longName": "091200 - Disclosure - SHARE-BASED COMPENSATION (Details)",
     "shortName": "SHARE-BASED COMPENSATION (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "85",
     "firstAnchor": {
      "contextRef": "c20230316",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20230316",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R86": {
     "role": "http://photronics.com/role/EmployeeRetirementPlansDetails",
     "longName": "091300 - Disclosure - EMPLOYEE RETIREMENT PLANS (Details)",
     "shortName": "EMPLOYEE RETIREMENT PLANS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "86",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:NumberOfMonthsOfServiceCompleted",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:NumberOfMonthsOfServiceCompleted",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R87": {
     "role": "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails",
     "longName": "091400 - Disclosure - INCOME TAXES, Components of Income Taxes (Details)",
     "shortName": "INCOME TAXES, Components of Income Taxes (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "87",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R88": {
     "role": "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails",
     "longName": "091402 - Disclosure - INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details)",
     "shortName": "INCOME TAXES, Unrecognized Tax Benefits and Carryforwards (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "88",
     "firstAnchor": {
      "contextRef": "c20231031",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20211031",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R89": {
     "role": "http://photronics.com/role/EarningsPerShareDetails",
     "longName": "091500 - Disclosure - EARNINGS PER SHARE (Details)",
     "shortName": "EARNINGS PER SHARE (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "89",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:DilutiveSecurities",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R90": {
     "role": "http://photronics.com/role/CommitmentsAndContingenciesDetails",
     "longName": "091600 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details)",
     "shortName": "COMMITMENTS AND CONTINGENCIES (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "90",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:MinimumRemainingTermOfPlantAndEquipment",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "plab:MinimumRemainingTermOfPlantAndEquipment",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R91": {
     "role": "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
     "longName": "091700 - Disclosure - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details)",
     "shortName": "CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "91",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:OtherComprehensiveIncomeLossTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R92": {
     "role": "http://photronics.com/role/RisksAndConcentrationsDetails",
     "longName": "091800 - Disclosure - RISKS AND CONCENTRATIONS (Details)",
     "shortName": "RISKS AND CONCENTRATIONS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "92",
     "firstAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:NoncurrentAssets",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031",
      "name": "us-gaap:NoncurrentAssets",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R93": {
     "role": "http://photronics.com/role/RelatedPartyTransactionsDetails",
     "longName": "091900 - Disclosure - RELATED PARTY TRANSACTIONS (Details)",
     "shortName": "RELATED PARTY TRANSACTIONS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "93",
     "firstAnchor": {
      "contextRef": "c20231101to20241031",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231101to20241031_MajorCustomersAxis_MajorCustomer1Member",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    },
    "R94": {
     "role": "http://photronics.com/role/FairValueMeasurementsDetails",
     "longName": "092000 - Disclosure - FAIR VALUE MEASUREMENTS (Details)",
     "shortName": "FAIR VALUE MEASUREMENTS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "94",
     "firstAnchor": {
      "contextRef": "c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true,
      "unique": true
     }
    },
    "R95": {
     "role": "http://photronics.com/role/ShareRepurchaseProgramsDetails",
     "longName": "092100 - Disclosure - SHARE REPURCHASE PROGRAMS (Details)",
     "shortName": "SHARE REPURCHASE PROGRAMS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "95",
     "firstAnchor": {
      "contextRef": "c20211101to20221031",
      "name": "us-gaap:TreasuryStockValueAcquiredCostMethod",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20200930_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember",
      "name": "srt:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20035608_10k.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "ACCRUED LIABILITIES",
        "label": "Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]",
        "documentation": "The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r516"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r938"
     ]
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableGrossCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/AccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts Receivable",
        "label": "Accounts Receivable, before Allowance for Credit Loss, Current",
        "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current."
       }
      }
     },
     "auth_ref": [
      "r224",
      "r302",
      "r887"
     ]
    },
    "us-gaap_AccountsReceivableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable [Member]",
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold."
       }
      }
     },
     "auth_ref": [
      "r867"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/AccountsReceivableDetails",
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/RelatedPartyTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Accounts receivable, net of allowance of $1,126 in 2024 and $1,099 in 2023",
        "totalLabel": "Total",
        "label": "Accounts receivable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r1037"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "ACCOUNTS RECEIVABLE [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccrualForTaxesOtherThanIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccrualForTaxesOtherThanIncomeTaxesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Value added and other taxes",
        "label": "Accrual for Taxes Other than Income Taxes, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for real and property taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r889",
      "r1079"
     ]
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedIncomeTaxesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes",
        "label": "Accrued Income Taxes, Current",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r153"
     ]
    },
    "us-gaap_AccruedIncomeTaxesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedIncomeTaxesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax payable",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r153"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails",
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued liabilities",
        "totalLabel": "Accrued liabilities",
        "label": "Accrued Liabilities, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "ACCRUED LIABILITIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesMember",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued Liabilities [Member]",
        "label": "Accrued Liabilities [Member]",
        "documentation": "This item represents obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "plab_AccruedOperatingLeasesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccruedOperatingLeasesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred, but not yet billed, for operating leases, due within one year or the normal operating cycle, if longer.",
        "label": "Accrued Operating Leases, Current",
        "verboseLabel": "Operating leases"
       }
      }
     },
     "auth_ref": []
    },
    "plab_AccruedPropertyPlantAndEquipmentCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccruedPropertyPlantAndEquipmentCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred, but not yet billed, for property, plant and equipment, due within one year or the normal operating cycle, if longer.",
        "label": "Accrued Property, Plant, and Equipment, Current",
        "terseLabel": "Property, plant, and equipment"
       }
      }
     },
     "auth_ref": []
    },
    "plab_AccruedServicesContractedCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccruedServicesContractedCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for contracted services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Services Contracted, Current",
        "terseLabel": "Service Contracts"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedUtilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedUtilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Telecommunications and utilities",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for utilities, such as electrical power, heating oil, natural gas, and water. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accumulated depreciation and amortization",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r221",
      "r745"
     ]
    },
    "us-gaap_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Foreign Currency Translation Adjustments [Member]",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Noncontrolling Interest [Member]",
        "documentation": "Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r13",
      "r22",
      "r107",
      "r108",
      "r618",
      "r624",
      "r1010",
      "r1011",
      "r1012"
     ]
    },
    "us-gaap_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign Currency Translation Adjustments [Member]",
        "documentation": "Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, including the portion attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r13",
      "r22",
      "r107",
      "r108",
      "r238",
      "r751",
      "r1011",
      "r1012"
     ]
    },
    "plab_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Changes to accumulated other comprehensive income attributable to non-controlling interest resulting from other.",
        "label": "Accumulated Other Comprehensive Income Attributable to Noncontrolling Interest Other [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Changes to accumulated other comprehensive income including portion attributable to non-controlling interest resulting from other.",
        "label": "Accumulated Other Comprehensive Income Including Portion Attributable to Noncontrolling Interest Other [Member]",
        "verboseLabel": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r618",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive loss",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r22",
      "r109",
      "r225",
      "r740",
      "r774",
      "r775"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTaxAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r618",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Member]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r13",
      "r22",
      "r582",
      "r585",
      "r649",
      "r770",
      "r771",
      "r1010",
      "r1011",
      "r1012",
      "r1024",
      "r1025",
      "r1026",
      "r1027"
     ]
    },
    "plab_AccumulatedOtherComprehensiveIncomeOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AccumulatedOtherComprehensiveIncomeOtherMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Changes to accumulated comprehensive income resulting from other.",
        "label": "Accumulated Other Comprehensive Income Other [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedTranslationAdjustmentMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign Currency Translation Adjustments [Member]",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]",
        "documentation": "Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r13",
      "r22",
      "r107",
      "r108",
      "r239",
      "r240",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r1010"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional paid-in capital",
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r938",
      "r1153"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-in Capital [Member]",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r791",
      "r1024",
      "r1025",
      "r1026",
      "r1027",
      "r1091",
      "r1154"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Share-based compensation expense",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r55",
      "r472"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Expense incurred",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r505",
      "r514"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccountsReceivableDetails",
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable, allowance",
        "negatedLabel": "Allowance for Credit Losses",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r226",
      "r303",
      "r340"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impairment loss on accounts receivable",
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance."
       }
      }
     },
     "auth_ref": [
      "r344"
     ]
    },
    "plab_AmendedAndRestatedCreditAgreementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AmendedAndRestatedCreditAgreementMember",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The member represents to amended and restated credit agreement.",
        "label": "Amended and Restated Credit Agreement [Member]",
        "terseLabel": "Corporate Credit Agreement [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortization of intangible assets",
        "label": "Amortization of Intangible Assets",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r369",
      "r370",
      "r901"
     ]
    },
    "us-gaap_AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash limit for dividends, distributions and redemption on equity",
        "documentation": "Amount of restricted net assets of consolidated and unconsolidated subsidiaries as of the end of the most recently completed fiscal year."
       }
      }
     },
     "auth_ref": [
      "r252"
     ]
    },
    "plab_AntidilutiveSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AntidilutiveSecuritiesAbstract",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total potentially dilutive shares excluded (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r282"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities [Axis]",
        "documentation": "Information by type of antidilutive security."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesNameDomain",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities, Name [Domain]",
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_AociAttributableToNoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AociAttributableToNoncontrollingInterestMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "AOCI Attributable to Noncontrolling Interest [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r13",
      "r22",
      "r1010",
      "r1011",
      "r1012"
     ]
    },
    "us-gaap_AociIncludingPortionAttributableToNoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AociIncludingPortionAttributableToNoncontrollingInterestMember",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "AOCI Including Portion Attributable to Noncontrolling Interest [Member]",
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, including the portion attributable to the noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r13",
      "r22",
      "r1010",
      "r1011",
      "r1012"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r168",
      "r223",
      "r253",
      "r287",
      "r289",
      "r295",
      "r296",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r575",
      "r579",
      "r611",
      "r734",
      "r818",
      "r897",
      "r898",
      "r938",
      "r967",
      "r1065",
      "r1066",
      "r1108"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsAndLiabilitiesLesseeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAndLiabilitiesLesseeAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating and Finance Leases included in Consolidated Balance Sheets [Abstract]",
        "label": "Assets and Liabilities, Lessee [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Current assets",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r216",
      "r231",
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r575",
      "r579",
      "r611",
      "r938",
      "r1065",
      "r1066",
      "r1108"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, fair value disclosure",
        "documentation": "Fair value portion of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r592",
      "r593",
      "r926"
     ]
    },
    "us-gaap_AssetsFairValueDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsFairValueDisclosureAbstract",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Assets [Abstract]",
        "label": "Assets, Fair Value Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net assets",
        "verboseLabel": "Net Assets",
        "label": "Net Assets",
        "documentation": "Amount of net assets (liabilities)."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_AssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncurrent assets",
        "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 after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r575",
      "r579",
      "r611",
      "r1065",
      "r1066",
      "r1108"
     ]
    },
    "dei_AuditorFirmId": {
     "xbrltype": "nonemptySequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorFirmId",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Firm ID",
        "documentation": "PCAOB issued Audit Firm Identifier"
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973"
     ]
    },
    "dei_AuditorLocation": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorLocation",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973"
     ]
    },
    "dei_AuditorName": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AuditorName",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unrealized gains",
        "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r308"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Unrealized losses",
        "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax",
        "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r309"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Amortized cost",
        "label": "Debt Securities, Available-for-Sale, Amortized Cost",
        "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r305",
      "r356",
      "r733"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtSecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AvailableForSaleSecuritiesDebtSecurities",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carrying Value",
        "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r306",
      "r356",
      "r592",
      "r724",
      "r926",
      "r929",
      "r1038",
      "r1095",
      "r1096",
      "r1097"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Available-for-sale [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "AverageLeaseTermsDiscountRatesAndLeasesNotYetCommencedAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Average Lease Terms, Discount Rates and Leases Not Yet Commenced [Abstract]",
        "verboseLabel": "Weighted Average Remaining Lease Terms, Discount Rates [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r476",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504"
     ]
    },
    "plab_BacklogOfOrdersAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "BacklogOfOrdersAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Backlog Of Orders [Abstract]",
        "terseLabel": "Backlog of Orders [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationAxis",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position Location, Balance [Axis]",
        "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r378",
      "r1120",
      "r1121"
     ]
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationDomain",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position Location, Balance [Domain]",
        "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r378",
      "r1120",
      "r1121"
     ]
    },
    "us-gaap_BankTimeDepositsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BankTimeDepositsMember",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Time Deposits [Member]",
        "label": "Bank Time Deposits [Member]",
        "documentation": "Certificates of deposit (CD) or savings accounts with a fixed term or understanding the customer can only withdraw by giving advanced notice with a bank or other financial institution. A CD is a short to medium-term investment available at banks and savings and loan institutions where a customer agrees to lend money to the institution for a certain amount of time and is paid a predetermined rate of interest."
       }
      }
     },
     "auth_ref": [
      "r164"
     ]
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation",
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r126"
     ]
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BuildingAndBuildingImprovementsMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Buildings and Improvements [Member]",
        "label": "Buildings and Improvements [Member]",
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": []
    },
    "country_CN": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "CN",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "China [Member]",
        "terseLabel": "China [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalExpendituresIncurredButNotYetPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CapitalExpendituresIncurredButNotYetPaid",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accruals for property, plant and equipment not yet paid",
        "label": "Capital Expenditures Incurred but Not yet Paid",
        "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r30",
      "r31"
     ]
    },
    "us-gaap_CapitalizedContractCostImpairmentLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CapitalizedContractCostImpairmentLoss",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairment loss on contract assets",
        "label": "Capitalized Contract Cost, Impairment Loss",
        "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer."
       }
      }
     },
     "auth_ref": [
      "r368"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Cash and cash equivalents at end of year",
        "label": "Cash and cash equivalents",
        "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."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r219",
      "r885"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAxis",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Axis]",
        "documentation": "Information by type of cash and cash equivalent balance."
       }
      }
     },
     "auth_ref": [
      "r219"
     ]
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and Cash Equivalents",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value."
       }
      }
     },
     "auth_ref": [
      "r27"
     ]
    },
    "us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Cash",
        "label": "Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]",
        "documentation": "Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits."
       }
      }
     },
     "auth_ref": [
      "r27",
      "r150"
     ]
    },
    "plab_CashAndNonCashInformationRelatedToLeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CashAndNonCashInformationRelatedToLeasesAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Non-cash Information Related to Leases [Abstract]",
        "terseLabel": "Cash and Non-cash Information Related to Leases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_CashAndNonCashInformationRelatedToLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CashAndNonCashInformationRelatedToLeasesTextBlock",
     "presentation": [
      "http://photronics.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's cash paid for operating leases and ROU assets obtained in exchange for operating lease liabilities.",
        "label": "Cash and Non-cash Information Related to Leases [Text Block]",
        "terseLabel": "Cash and Non-cash Information Related to Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Cash, cash equivalents, and restricted cash at end of year",
        "periodStartLabel": "Cash, cash equivalents, and restricted cash at beginning of year",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r122",
      "r249"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net increase in cash, cash equivalents, and restricted cash",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "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."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r122"
     ]
    },
    "us-gaap_ChangeInContractWithCustomerLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ChangeInContractWithCustomerLiabilityAbstract",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Contract with Customer, Liability [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfTreasuryStockTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfTreasuryStockTable",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Treasury Stock [Table]",
        "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r48",
      "r49",
      "r50"
     ]
    },
    "plab_CommitmentAndContingenciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CommitmentAndContingenciesAbstract",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitment and Contingencies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and contingencies (Note 16)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r91",
      "r157",
      "r737",
      "r805"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "COMMITMENTS AND CONTINGENCIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "COMMITMENTS AND CONTINGENCIES",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r380",
      "r381",
      "r868",
      "r1056",
      "r1061"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r957",
      "r958",
      "r959",
      "r961",
      "r962",
      "r963",
      "r964",
      "r1024",
      "r1025",
      "r1027",
      "r1091",
      "r1152",
      "r1154"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r96"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares authorized (in shares)",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r96",
      "r806"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares issued (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r96"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares outstanding (in shares)",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r96",
      "r806",
      "r824",
      "r1154",
      "r1155"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, $0.01 par value, 150,000 shares authorized, 61,949 shares issued and outstanding at October 31, 2024, and 61,310 shares issued and outstanding at October 31, 2023",
        "label": "Common Stock, Value, Issued",
        "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."
       }
      }
     },
     "auth_ref": [
      "r96",
      "r739",
      "r938"
     ]
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EMPLOYEE RETIREMENT PLANS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComponentsOfDeferredTaxAssetsAndLiabilitiesAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Classification [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ComponentsOfIncomeBeforeIncomeTaxProvisionAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Components Of Income Before Income Tax Provision [Abstract]",
        "terseLabel": "Components of Income Before Income Tax Provision [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income (loss) attributable to Photronics, Inc. shareholders",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r234",
      "r236",
      "r244",
      "r728",
      "r753",
      "r755"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less: comprehensive income attributable to noncontrolling interests",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r59",
      "r71",
      "r234",
      "r236",
      "r243",
      "r727",
      "r753",
      "r754"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income",
        "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r145",
      "r234",
      "r236",
      "r242",
      "r726",
      "r753"
     ]
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r75",
      "r76",
      "r300",
      "r867"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r75",
      "r76",
      "r300",
      "r777",
      "r867"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r75",
      "r76",
      "r300",
      "r867",
      "r984"
     ]
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "RISKS AND CONCENTRATIONS",
        "label": "Concentration Risk Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r127"
     ]
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskLineItems",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r867"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer's percentage of net accounts receivable/revenue",
        "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."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r75",
      "r76",
      "r300"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r75",
      "r76",
      "r300",
      "r867"
     ]
    },
    "us-gaap_ConcentrationRisksTypesNoConcentrationPercentageAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRisksTypesNoConcentrationPercentageAbstract",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical Areas [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ConsolidatedEntitiesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ConsolidatedEntitiesAxis",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Axis]",
        "documentation": "Information by consolidated entity or group of entities."
       }
      }
     },
     "auth_ref": [
      "r183",
      "r203",
      "r256",
      "r575",
      "r576",
      "r579",
      "r580",
      "r655",
      "r873",
      "r1001",
      "r1002",
      "r1003",
      "r1064",
      "r1067",
      "r1068"
     ]
    },
    "srt_ConsolidatedEntitiesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ConsolidatedEntitiesDomain",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Domain]",
        "documentation": "Entity or group of entities consolidated into reporting entity."
       }
      }
     },
     "auth_ref": [
      "r183",
      "r203",
      "r256",
      "r575",
      "r576",
      "r579",
      "r580",
      "r655",
      "r873",
      "r1001",
      "r1002",
      "r1003",
      "r1064",
      "r1067",
      "r1068"
     ]
    },
    "plab_ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVenturePolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined).",
        "label": "Consolidation, Joint Venture Variable Interest Entity, Policy [Policy Text Block]",
        "terseLabel": "Variable Interest Entities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConsolidationPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Principles of Consolidation",
        "label": "Consolidation, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary."
       }
      }
     },
     "auth_ref": [
      "r60",
      "r891"
     ]
    },
    "us-gaap_ConsolidationVariableInterestEntityPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConsolidationVariableInterestEntityPolicy",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Variable Interest Entities",
        "label": "Consolidation, Variable Interest Entity, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined)."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r63",
      "r65"
     ]
    },
    "us-gaap_ConstructionInProgressMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConstructionInProgressMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Construction in Progress [Member]",
        "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAndLiabilityAbstract",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with Customer, Asset and Liability [Abstract]",
        "label": "Contract with Customer, Asset and Liability [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://photronics.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Balances",
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability."
       }
      }
     },
     "auth_ref": [
      "r1071"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r427",
      "r429",
      "r448"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract assets",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current."
       }
      }
     },
     "auth_ref": [
      "r427",
      "r429",
      "r448"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract liabilities",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r427",
      "r428",
      "r448"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract liabilities",
        "label": "Contract with Customer, Liability, Current",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r427",
      "r428",
      "r448"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract liabilities",
        "label": "Contract with Customer, Liability, Noncurrent",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r427",
      "r428",
      "r448"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue recognized from beginning liability",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due."
       }
      }
     },
     "auth_ref": [
      "r449"
     ]
    },
    "us-gaap_ContractualObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligation",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total",
        "label": "Contractual Obligation",
        "documentation": "Amount of contractual obligation, including, but not limited to, long-term debt, lease obligation, purchase obligation, and other commitments."
       }
      }
     },
     "auth_ref": [
      "r1022"
     ]
    },
    "us-gaap_ContractualObligationDueAfterFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueAfterFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Thereafter",
        "label": "Contractual Obligation, to be Paid, after Year Five",
        "documentation": "Amount of contractual obligation to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationDueInFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueInFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2029",
        "label": "Contractual Obligation, to be Paid, Year Five",
        "documentation": "Amount of contractual obligation to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationDueInFourthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueInFourthYear",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2028",
        "label": "Contractual Obligation, to be Paid, Year Four",
        "documentation": "Amount of contractual obligation 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)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationDueInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2025",
        "label": "Contractual Obligation, to be Paid, Year One",
        "documentation": "Amount of contractual obligation 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)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationDueInSecondYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueInSecondYear",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Contractual Obligation, to be Paid, Year Two",
        "documentation": "Amount of contractual obligation 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)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationDueInThirdYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationDueInThirdYear",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Contractual Obligation, to be Paid, Year Three",
        "documentation": "Amount of contractual obligation 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)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractualObligationFiscalYearMaturityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractualObligationFiscalYearMaturityAbstract",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unrecognized Commitments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unrecognized Commitments",
        "documentation": "Tabular disclosure of contractual obligation by timing of payment due. Includes, but is not limited to, long-term debt obligation, lease obligation, and purchase obligation."
       }
      }
     },
     "auth_ref": [
      "r996",
      "r1023"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cost of goods sold",
        "label": "Cost of Goods and Services Sold",
        "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."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r113",
      "r692"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSoldDepreciationAndAmortization",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation and amortization expense",
        "documentation": "Amount of expense for allocation of cost of tangible and intangible assets over their useful lives directly used in production of good and rendering of service."
       }
      }
     },
     "auth_ref": [
      "r1013"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSoldDepreciationAndAmortizationAbstract",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation Expense [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfSalesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfSalesMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Goods Sold [Member]",
        "documentation": "Primary financial statement caption encompassing cost of sales."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditLossFinancialInstrumentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditLossFinancialInstrumentPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses",
        "documentation": "Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r338",
      "r339",
      "r341",
      "r342",
      "r345",
      "r347",
      "r348",
      "r349",
      "r350",
      "r352",
      "r353",
      "r354",
      "r355",
      "r357",
      "r358",
      "r359",
      "r361"
     ]
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CurrentFederalTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal",
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r987",
      "r1021",
      "r1089"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CurrentForeignTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign",
        "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r987",
      "r1021"
     ]
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Current income tax provision",
        "label": "Current Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r556",
      "r1021"
     ]
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "State",
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r987",
      "r1021",
      "r1089"
     ]
    },
    "plab_CustomerAMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerAMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents a customer of the Company.",
        "label": "Customer A [Member]",
        "terseLabel": "Customer A [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_CustomerAccountedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerAccountedAbstract",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Account [Abstract]",
        "terseLabel": "Customer Account [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_CustomerBMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerBMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents a customer of the Company.",
        "label": "Customer B [Member]",
        "terseLabel": "Customer B [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_CustomerCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerCMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer classified as customer c.",
        "label": "Customer C [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerConcentrationRiskMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Concentration Risk [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r128",
      "r300"
     ]
    },
    "plab_CustomerOrdersExpectedTimingOfSatisfactionPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerOrdersExpectedTimingOfSatisfactionPeriod",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which customer order is expected to be fulfilled, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Customer orders, Expected Timing of Satisfaction, Period",
        "terseLabel": "Customer order, expected satisfaction period"
       }
      }
     },
     "auth_ref": []
    },
    "plab_CustomerOrdersExtendedTimingOfSatisfactionPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "CustomerOrdersExtendedTimingOfSatisfactionPeriod",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which customer order is extended to be fulfilled, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Customer orders, Extended Timing of Satisfaction, Period",
        "terseLabel": "Customer order, extended satisfaction period"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "DEBT [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/Debt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "DEBT",
        "label": "Debt Disclosure [Text Block]",
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants."
       }
      }
     },
     "auth_ref": [
      "r136",
      "r251",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r386",
      "r387",
      "r397",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r413",
      "r420",
      "r421",
      "r423",
      "r625"
     ]
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Axis]",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r84",
      "r85",
      "r152",
      "r156",
      "r256",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r404",
      "r409",
      "r410",
      "r411",
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r936",
      "r1019",
      "r1057",
      "r1058",
      "r1059",
      "r1103",
      "r1104"
     ]
    },
    "us-gaap_DebtInstrumentCollateralAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentCollateralAmount",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loan collateral (carrying amount)",
        "documentation": "Amount of assets pledged to secure a debt instrument."
       }
      }
     },
     "auth_ref": [
      "r81"
     ]
    },
    "us-gaap_DebtInstrumentFrequencyOfPeriodicPayment": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentFrequencyOfPeriodicPayment",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Periodic payment frequency",
        "documentation": "Description of the frequency of periodic payments (monthly, quarterly, annual)."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r80"
     ]
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r256",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r404",
      "r409",
      "r410",
      "r411",
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r422",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r936",
      "r1019",
      "r1103",
      "r1104"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Name [Domain]",
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r256",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r404",
      "r409",
      "r410",
      "r411",
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r936",
      "r1019",
      "r1057",
      "r1058",
      "r1059",
      "r1103",
      "r1104"
     ]
    },
    "us-gaap_DebtInstrumentPaymentTerms": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentPaymentTerms",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Periodic payment amount",
        "label": "Debt Instrument, Payment Terms",
        "documentation": "Description of the payment terms of the debt instrument (for example, whether periodic payments include principal and frequency of payments) and discussion about any contingencies associated with the payment."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r87"
     ]
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentPeriodicPayment",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finance lease monthly payments",
        "label": "Debt Instrument, Periodic Payment",
        "documentation": "Amount of the required periodic payments including both interest and principal payments."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r80"
     ]
    },
    "us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Early buyout option to purchase tool",
        "label": "Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid",
        "documentation": "Amount of payment greater than the preceding installment payments to be paid at final maturity date of debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long-term Debt Instruments [Table]",
        "documentation": "Disclosure of information about long-term debt instrument or arrangement."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r44",
      "r45",
      "r79",
      "r137",
      "r138",
      "r256",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r404",
      "r409",
      "r410",
      "r411",
      "r412",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r422",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r936",
      "r1019",
      "r1103",
      "r1104"
     ]
    },
    "us-gaap_DebtInstrumentTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentTerm",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Term of loan",
        "label": "Debt Instrument, Term",
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentsAbstract",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instruments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtLongtermAndShorttermCombinedAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtLongtermAndShorttermCombinedAmount",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total debt",
        "label": "Amount outstanding",
        "documentation": "Represents the aggregate of total long-term debt, including current maturities and short-term debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtSecuritiesAvailableForSaleTable",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Securities, Available-for-Sale [Table]",
        "documentation": "Disclosure of information about investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtSecuritiesAvailableForSaleTableTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Available-for-Sale Debt Securities and Time Deposits",
        "documentation": "Tabular disclosure of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r1039",
      "r1040",
      "r1041",
      "r1042",
      "r1043",
      "r1044",
      "r1045",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050"
     ]
    },
    "us-gaap_DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Uncertain tax positions that may be resolved over next twelve months",
        "documentation": "Amount of decrease reasonably possible in the next twelve months for the unrecognized tax benefit."
       }
      }
     },
     "auth_ref": [
      "r169"
     ]
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Federal",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r1021",
      "r1088",
      "r1089"
     ]
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign",
        "label": "Deferred Foreign Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r1021",
      "r1088"
     ]
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income tax assets",
        "verboseLabel": "Deferred income taxes",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r524"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows",
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income taxes",
        "totalLabel": "Deferred income tax provision",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r180",
      "r1021"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTotalLabel": "Deferred income taxes liabilities",
        "label": "Deferred Tax Liabilities, Gross",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r93",
      "r154",
      "r548"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other liabilities",
        "label": "Deferred Income Tax Liabilities, Net",
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r523",
      "r524",
      "r735"
     ]
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r1021",
      "r1088",
      "r1089"
     ]
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred tax assets",
        "label": "Deferred Tax Assets, Gross",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards."
       }
      }
     },
     "auth_ref": [
      "r549"
     ]
    },
    "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research intangibles",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from in-process research and development cost acquired in business combination or from joint venture formation or both."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "plab_DeferredTaxAssetsLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "DeferredTaxAssetsLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from lease liability.",
        "label": "Deferred Tax Assets, Lease Liability",
        "terseLabel": "Lease liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net deferred income tax assets",
        "label": "Deferred Tax Assets, Net",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r1082"
     ]
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Deferred tax assets net of valuation allowance",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards."
       }
      }
     },
     "auth_ref": [
      "r1082"
     ]
    },
    "us-gaap_DeferredTaxAssetsNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsNetAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Deferred Income Tax Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsNetOfValuationAllowanceAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net operating losses",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsComponentsAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Loss Carryforward [Abstract]",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Components [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment",
        "label": "Deferred Tax Assets, Property, Plant and Equipment",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsOther",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax credit carryforwards",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible tax credit carryforwards, classified as other."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based compensation",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reserves not currently deductible",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves, classified as other."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsValuationAllowance",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Valuation allowances",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized."
       }
      }
     },
     "auth_ref": [
      "r550"
     ]
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxLiabilitiesAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Liabilities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxLiabilitiesOther",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other",
        "label": "Deferred Tax Liabilities, Other",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other."
       }
      }
     },
     "auth_ref": [
      "r1086"
     ]
    },
    "plab_DeferredTaxLiabilitiesRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "DeferredTaxLiabilitiesRightOfUseAsset",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from right-of-use assets.",
        "label": "Deferred Tax Liabilities, Right-of-use Asset",
        "negatedLabel": "ROU assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanCostRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanCostRecognized",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Company's contribution to defined contribution retirement plans",
        "label": "Defined Contribution Plan, Cost",
        "documentation": "Amount of cost for defined contribution plan."
       }
      }
     },
     "auth_ref": [
      "r468"
     ]
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Maximum percentage of employees' gross pay that Company will match",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay",
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum percentage of employees' contributions that Company will match",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match",
        "documentation": "Percentage employer matches of the employee's percentage contribution matched."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Percentage of salary that can be contributed by the employee",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent",
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan."
       }
      }
     },
     "auth_ref": []
    },
    "plab_DepreciationAndAmortizationExpenseTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "DepreciationAndAmortizationExpenseTableTextBlock",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of depreciation expense including the amortization of right of use assets.",
        "label": "Depreciation and Amortization Expense [Table Text Block]",
        "terseLabel": "Depreciation Expense"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation and amortization of property, plant and equipment",
        "label": "Depreciation, Depletion and Amortization",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r287",
      "r292",
      "r296",
      "r897",
      "r898"
     ]
    },
    "us-gaap_DilutiveSecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DilutiveSecurities",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of dilutive securities",
        "documentation": "Amount of increase (decrease) to net income used for calculating diluted earnings per share (EPS), resulting from the assumed exercise stock options, restrictive stock units (RSUs), convertible preferred stock of an employee stock ownership plan (ESOP), and other dilutive convertible securities."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueAbstract",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r447",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table]",
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r447",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://photronics.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue",
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r1072"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "SHARE-BASED COMPENSATION",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r470",
      "r475",
      "r506",
      "r507",
      "r509",
      "r919"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "SHARE-BASED COMPENSATION [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973"
     ]
    },
    "dei_DocumentFinStmtErrorCorrectionFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFinStmtErrorCorrectionFlag",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Financial Statement Error Correction [Flag]",
        "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction."
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973",
      "r975"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r974"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "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'."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DomesticCountryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DomesticCountryMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal [Member]",
        "documentation": "Designated federal jurisdiction entitled to levy and collect income tax in country of domicile. Includes, but is not limited to, national jurisdiction for non-U.S. jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r527"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Earnings per share:",
        "label": "EARNINGS PER SHARE [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic (in dollars per share)",
        "verboseLabel": "Net Income attributable to Photronics shareholders - Basic (in dollars per share)",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r245",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r272",
      "r274",
      "r279",
      "r280",
      "r281",
      "r286",
      "r570",
      "r573",
      "r589",
      "r590",
      "r729",
      "r756",
      "r894"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Diluted (in dollars per share)",
        "terseLabel": "Net Income attributable to Photronics shareholders - Diluted (in dollars per share)",
        "label": "Earnings Per Share, Diluted",
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r245",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r274",
      "r279",
      "r280",
      "r281",
      "r286",
      "r570",
      "r573",
      "r589",
      "r590",
      "r729",
      "r756",
      "r894"
     ]
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerSharePolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share",
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r34",
      "r283"
     ]
    },
    "us-gaap_EarningsPerShareReconciliationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareReconciliationAbstract",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Calculation of Basic and Diluted Earnings Per Share [Abstract]",
        "label": "Earnings Per Share Reconciliation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://photronics.com/role/EarningsPerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "EARNINGS PER SHARE",
        "label": "Earnings Per Share [Text Block]",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r282",
      "r284",
      "r285"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effects of exchange rate changes on cash, cash equivalents, and restricted cash",
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r617"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Photronics effective tax rates",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r527",
      "r923"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "U.S. statutory tax rates",
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)."
       }
      }
     },
     "auth_ref": [
      "r255",
      "r527",
      "r559",
      "r923"
     ]
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation related expenses",
        "label": "Employee-related Liabilities, Current",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unrecognized compensation cost",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r508"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated Expenses Not Yet Incurred [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted-average amortization period (in years)",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "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."
       }
      }
     },
     "auth_ref": [
      "r508"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation cost not yet recognized",
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r1078"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation cost not yet recognized",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount",
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1078"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax benefits of share-based compensation",
        "documentation": "Amount of tax benefit from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r177"
     ]
    },
    "us-gaap_EmployeeStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Purchase Plan [Member]",
        "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock Options [Member]",
        "label": "Employee Stock Option [Member]",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": []
    },
    "plab_EmployeeStockPurchasePlanPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "EmployeeStockPurchasePlanPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for Employee Stock Purchase Plan.",
        "label": "Employee Stock Purchase Plan [Policy Text Block]",
        "terseLabel": "Employee Stock Purchase Plan"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "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."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r978"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r969"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r979"
     ]
    },
    "us-gaap_EquityClassOfTreasuryStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityClassOfTreasuryStockLineItems",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Class of Treasury Stock [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r213",
      "r238",
      "r239",
      "r240",
      "r257",
      "r258",
      "r259",
      "r261",
      "r266",
      "r268",
      "r270",
      "r288",
      "r335",
      "r336",
      "r371",
      "r426",
      "r557",
      "r558",
      "r567",
      "r568",
      "r569",
      "r571",
      "r572",
      "r573",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r588",
      "r618",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r626",
      "r629",
      "r649",
      "r751",
      "r770",
      "r771",
      "r772",
      "r791",
      "r849"
     ]
    },
    "plab_EuropeAndOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "EuropeAndOtherMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The continent of Europe and other areas.",
        "label": "Europe and Other [Member]",
        "terseLabel": "Europe and Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_EuropeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "EuropeMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Europe [Member]",
        "documentation": "Continent of Europe."
       }
      }
     },
     "auth_ref": [
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1156",
      "r1157",
      "r1158",
      "r1159"
     ]
    },
    "srt_ExecutiveOfficerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ExecutiveOfficerMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive [Member]",
        "documentation": "Person with designation of executive officer."
       }
      }
     },
     "auth_ref": [
      "r1036"
     ]
    },
    "plab_ExpectedRefundableFederalInvestmentTaxCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ExpectedRefundableFederalInvestmentTaxCredit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future cash inflow expected from refundable federal investment tax credit.",
        "label": "Expected Refundable Federal Investment Tax Credit",
        "terseLabel": "Expected refundable federal investment tax credit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets Measured at Fair Value on Recurring Basis",
        "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)."
       }
      }
     },
     "auth_ref": [
      "r1093",
      "r1094"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient."
       }
      }
     },
     "auth_ref": [
      "r411",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r591",
      "r593",
      "r594",
      "r595",
      "r596",
      "r602",
      "r603",
      "r605",
      "r659",
      "r660",
      "r661",
      "r903",
      "r904",
      "r915",
      "r916",
      "r917",
      "r926",
      "r929"
     ]
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByMeasurementFrequencyAxis",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Axis]",
        "documentation": "Information by measurement frequency."
       }
      }
     },
     "auth_ref": [
      "r592",
      "r593",
      "r594",
      "r596",
      "r926",
      "r1096",
      "r1099"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "FAIR VALUE MEASUREMENTS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "FAIR VALUE MEASUREMENTS",
        "label": "Fair Value Disclosures [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r598",
      "r600",
      "r601",
      "r602",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r723",
      "r926",
      "r930"
     ]
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel1Member",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Level 1 [Member]",
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date."
       }
      }
     },
     "auth_ref": [
      "r411",
      "r454",
      "r459",
      "r593",
      "r603",
      "r659",
      "r915",
      "r916",
      "r917",
      "r926"
     ]
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel2Member",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Level 2 [Member]",
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets."
       }
      }
     },
     "auth_ref": [
      "r411",
      "r454",
      "r459",
      "r593",
      "r594",
      "r603",
      "r660",
      "r903",
      "r904",
      "r915",
      "r916",
      "r917",
      "r926"
     ]
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Level 3 [Member]",
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r411",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r593",
      "r594",
      "r595",
      "r596",
      "r603",
      "r661",
      "r903",
      "r904",
      "r915",
      "r916",
      "r917",
      "r926",
      "r929"
     ]
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementFrequencyDomain",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measurement Frequency [Domain]",
        "documentation": "Measurement frequency."
       }
      }
     },
     "auth_ref": [
      "r592",
      "r593",
      "r594",
      "r596",
      "r926",
      "r1096",
      "r1099"
     ]
    },
    "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementPolicyPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Financial Instruments",
        "label": "Fair Value Measurement, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "auth_ref": [
      "r411",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r591",
      "r593",
      "r594",
      "r595",
      "r596",
      "r602",
      "r603",
      "r605",
      "r659",
      "r660",
      "r661",
      "r903",
      "r904",
      "r915",
      "r916",
      "r917",
      "r926",
      "r929"
     ]
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementsRecurringMember",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Recurring [Member]",
        "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value."
       }
      }
     },
     "auth_ref": [
      "r926",
      "r1093",
      "r1094",
      "r1095",
      "r1096",
      "r1097",
      "r1099"
     ]
    },
    "plab_FederalInvestmentTaxCreditsRefundReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FederalInvestmentTaxCreditsRefundReceivableCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The receivable amount of federal investment tax credits refund expected to be realized or consumed within one year or operating cycle, if longer.",
        "label": "Federal Investment Tax Credits Refund Receivable, Current",
        "verboseLabel": "Expected tax credits receivable"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseInterestExpense",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest on finance lease",
        "documentation": "Amount of interest expense on finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r633",
      "r638",
      "r937"
     ]
    },
    "us-gaap_FinanceLeaseInterestPaymentOnLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseInterestPaymentOnLiability",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating cash flows used for finance leases",
        "documentation": "Amount of interest paid on finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r635",
      "r642"
     ]
    },
    "us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Future Lease Payments Under Noncancelable Finance Leases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails",
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease amount",
        "terseLabel": "Finance lease liabilities",
        "totalLabel": "Lease Liabilities - Finance Leases",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r631",
      "r646"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease Liability [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r631"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes current finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease Liability, Noncurrent",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r631"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes noncurrent finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total lease payments",
        "label": "Finance Lease, Liability, to be Paid",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "plab_FinanceLeaseLiabilityPaymentsDueAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFour",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance leases, due after fourth fiscal year following latest fiscal year.",
        "label": "Finance Lease, Liability, Payments, Due after Year Four",
        "terseLabel": "2029 and thereafter"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2025",
        "label": "Finance Lease, Liability, to be Paid, Year One",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2028",
        "label": "Finance Lease, Liability, to be Paid, Year Four",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Finance Lease, Liability, to be Paid, Year Three",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Finance Lease, Liability, to be Paid, Year Two",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Imputed interest",
        "label": "Finance Lease, Liability, Undiscounted Excess Amount",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "plab_FinanceLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FinanceLeaseMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The obligation for lease payments from finance lease.",
        "label": "Finance Lease [Member]",
        "terseLabel": "Finance Leases [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeasePrincipalPayments",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financing cash flows used for finance leases",
        "documentation": "Amount of cash outflow for principal payment on finance lease."
       }
      }
     },
     "auth_ref": [
      "r634",
      "r642"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails",
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Finance lease, right-of-use asset, net",
        "terseLabel": "ROU Assets - Finance Leases",
        "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization",
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r630"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAssetAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accumulated amortization",
        "label": "Finance Lease, Right-of-Use Asset, Accumulated Amortization",
        "documentation": "Amount of accumulated amortization of right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r982",
      "r986"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finance lease, Right-of-use asset [Abstract]",
        "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of ROU assets",
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r633",
      "r638",
      "r937"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease, right-of-use asset, gross",
        "documentation": "Amount, before accumulated amortization, of right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r980"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes finance lease right-of-use asset."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "plab_FinanceLeaseRightOfUseAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FinanceLeaseRightOfUseAssetsTableTextBlock",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of right-of-use assets resulting from finance leases.",
        "label": "Finance Lease Right of use Assets [Table Text Block]",
        "terseLabel": "Information on ROU Assets from Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance leases, Weighted-average discount rate",
        "documentation": "Weighted average discount rate for finance lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r645",
      "r937"
     ]
    },
    "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance leases, Weighted-average remaining lease term",
        "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r644",
      "r937"
     ]
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r342",
      "r343",
      "r345",
      "r346",
      "r351",
      "r360",
      "r361",
      "r362",
      "r422",
      "r425",
      "r587",
      "r610",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r673",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r752",
      "r900",
      "r926",
      "r927",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r939",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1092",
      "r1095",
      "r1096",
      "r1097",
      "r1098",
      "r1099"
     ]
    },
    "plab_FirstThreeMonthsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FirstThreeMonthsMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance lease monthly payment for three months period.",
        "label": "First Three Months [Member]",
        "terseLabel": "First Three Months [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_FlatPanelDisplaysMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FlatPanelDisplaysMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents one of the products of the entity.",
        "label": "Flat Panel Displays [Member]",
        "terseLabel": "FPD [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_FollowedByThirtySixMonthsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FollowedByThirtySixMonthsMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance lease monthly payments for the following thirty six months period.",
        "label": "Followed by Thirty Six Months [Member]",
        "terseLabel": "Forty Eight Months [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_FollowingNineMonthsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FollowingNineMonthsMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance lease monthly payments for the following nine months period.",
        "label": "Following Nine Months [Member]",
        "terseLabel": "Following Nine Months [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ForeignCountryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCountryMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign [Member]",
        "documentation": "Designated foreign jurisdiction entitled to levy and collect income tax outside country of domicile."
       }
      }
     },
     "auth_ref": [
      "r527",
      "r528"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency transactions impacts, net",
        "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r613",
      "r614",
      "r615",
      "r616",
      "r846"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Translation of Foreign Currency Financial Statements",
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy."
       }
      }
     },
     "auth_ref": [
      "r612"
     ]
    },
    "plab_ForeignCurrencyTransactionsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ForeignCurrencyTransactionsPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for transactions denominated in a currency other than the reporting enterprise's functional currency.",
        "label": "Foreign Currency Transactions [Policy Text Block]",
        "terseLabel": "Foreign Currency Transactions"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Furniture, Fixtures and Office Equipment [Member]",
        "label": "Furniture, Fixtures and Office Equipment [Member]",
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases."
       }
      }
     },
     "auth_ref": []
    },
    "plab_FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock",
     "presentation": [
      "http://photronics.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating and finance lease liability.",
        "label": "Future Lease Payments under Noncancelable Operating and Finance Leases [Table Text Block]",
        "terseLabel": "Future Lease Payments under Noncancelable Operating and Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other operating expense",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "plab_GovernmentGrantsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "GovernmentGrantsAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Government Grants [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_GovernmentGrantsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "GovernmentGrantsPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for government grants.",
        "label": "Government Grants [Policy Text Block]",
        "terseLabel": "Government Grants"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GrossProfit",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Gross Profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r114",
      "r167",
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r611",
      "r896",
      "r897",
      "r1030",
      "r1031",
      "r1032",
      "r1033",
      "r1034",
      "r1065"
     ]
    },
    "plab_HighEndFlatPanelDisplaysMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "HighEndFlatPanelDisplaysMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the classification of products by performance.",
        "label": "High-end Flat Panel Displays [Member]",
        "terseLabel": "High-end [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_HighEndIntegratedCircuitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "HighEndIntegratedCircuitsMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the classification of products by performance.",
        "label": "High-end Integrated Circuits [Member]",
        "terseLabel": "High-end [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_IcfrAuditorAttestationFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "IcfrAuditorAttestationFlag",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "auth_ref": [
      "r971",
      "r972",
      "r973"
     ]
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impairment of Long-Lived Assets",
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r134"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "United States",
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations."
       }
      }
     },
     "auth_ref": [
      "r254",
      "r526"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income before income tax provision",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "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."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r162",
      "r167",
      "r730",
      "r747",
      "r896",
      "r897",
      "r1030",
      "r1031",
      "r1032",
      "r1033",
      "r1034"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign",
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile."
       }
      }
     },
     "auth_ref": [
      "r254",
      "r526"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Income [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Income Location, Balance [Axis]",
        "documentation": "Information by location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r372",
      "r378",
      "r379",
      "r597",
      "r599",
      "r604",
      "r767",
      "r769",
      "r833",
      "r881",
      "r928",
      "r1122"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Income Location, Balance [Domain]",
        "documentation": "Location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r378",
      "r379",
      "r597",
      "r599",
      "r604",
      "r767",
      "r769",
      "r833",
      "r881",
      "r928",
      "r1122"
     ]
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityAxis",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority [Axis]",
        "documentation": "Information by income tax jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r248",
      "r527",
      "r528",
      "r539",
      "r553",
      "r923",
      "r1085"
     ]
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityDomain",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority [Domain]",
        "documentation": "Income tax jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r248",
      "r527",
      "r528",
      "r539",
      "r553",
      "r923",
      "r1085"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "INCOME TAXES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "INCOME TAXES",
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r255",
      "r519",
      "r527",
      "r535",
      "r536",
      "r537",
      "r546",
      "r552",
      "r560",
      "r562",
      "r565",
      "r566",
      "r785",
      "r923"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax provision",
        "totalLabel": "Income tax provision, Total",
        "label": "Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r170",
      "r181",
      "r269",
      "r270",
      "r287",
      "r293",
      "r296",
      "r525",
      "r527",
      "r561",
      "r758",
      "r923"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Provision [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Provision Reconciliation [Abstract]",
        "label": "Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes",
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements."
       }
      }
     },
     "auth_ref": [
      "r237",
      "r521",
      "r522",
      "r546",
      "r547",
      "r551",
      "r555",
      "r782"
     ]
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in valuation allowance",
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r532",
      "r923",
      "r1080"
     ]
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign rate differential",
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit)."
       }
      }
     },
     "auth_ref": [
      "r528",
      "r530",
      "r923",
      "r1080"
     ]
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "U.S. federal income tax at statutory rate",
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r527",
      "r923"
     ]
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other, net",
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments."
       }
      }
     },
     "auth_ref": [
      "r923",
      "r1080",
      "r1081"
     ]
    },
    "us-gaap_IncomeTaxReconciliationTaxContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationTaxContingencies",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Uncertain tax positions, including reserves, settlements and resolutions",
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies."
       }
      }
     },
     "auth_ref": [
      "r533",
      "r923",
      "r1080"
     ]
    },
    "us-gaap_IncomeTaxReconciliationTaxCredits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationTaxCredits",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesComponentsOfIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Tax credits",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Amount",
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits."
       }
      }
     },
     "auth_ref": [
      "r531",
      "r534",
      "r1080"
     ]
    },
    "us-gaap_IncomeTaxUncertaintiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxUncertaintiesAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Uncertainties [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxUncertaintiesPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxUncertaintiesPolicy",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest and Penalties Related to Uncertain Tax Positions",
        "documentation": "Disclosure of accounting policy for tax positions taken in the tax return filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other types of contingencies related to income taxes."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxesPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaid",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes paid",
        "documentation": "Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r124",
      "r1017",
      "r1083",
      "r1084"
     ]
    },
    "us-gaap_IncomeTaxesPaidNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaidNetAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Payments and Refunds [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable, accrued liabilities and other",
        "label": "Increase (Decrease) in Accounts Payable and Other Operating Liabilities",
        "documentation": "Amount of increase (decrease) in obligations incurred but not paid, and operating obligations classified as other."
       }
      }
     },
     "auth_ref": [
      "r1015"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accounts receivable",
        "label": "Increase (Decrease) in Accounts Receivable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Inventories",
        "label": "Increase (Decrease) in Inventories",
        "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."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in assets, liabilities, and other:",
        "label": "Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherCurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherCurrentAssets",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other current assets",
        "label": "Increase (Decrease) in Other Current Assets",
        "documentation": "Amount of increase (decrease) in current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r1015"
     ]
    },
    "plab_IncreaseDecreaseInPropertyAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "IncreaseDecreaseInPropertyAndEquipmentNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesGovernmentGrantsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) in the amount of property and equipment, net due to result of expected refundable tax credits in connection with the CHIPS Act.",
        "label": "Increase (Decrease) in Property and Equipment, Net",
        "terseLabel": "Decrease in property and equipment, net"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based payment awards (in shares)",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r275",
      "r276",
      "r277",
      "r281",
      "r474"
     ]
    },
    "plab_InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock",
     "presentation": [
      "http://photronics.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of balance sheet information related to leases.",
        "label": "Information on Operating and Finance Leases Included in Consolidated Balance Sheets [Table Text Block]",
        "terseLabel": "Information on Operating and Finance Leases Included in Consolidated Balance Sheets"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r976"
     ]
    },
    "plab_IntegratedCircuitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "IntegratedCircuitsMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents one of the products of the entity.",
        "label": "Integrated Circuits [Member]",
        "terseLabel": "IC [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_InterestExpenseNetOfSubsidies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "InterestExpenseNetOfSubsidies",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount represents interest and debt expense, net of subsidies received.",
        "label": "Interest Expense Net of Subsidies",
        "negatedLabel": "Interest expense, net of subsidies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaid",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtInterestPaidForDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest payments",
        "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities."
       }
      }
     },
     "auth_ref": [
      "r1016"
     ]
    },
    "us-gaap_InterestPaidAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaidAbstract",
     "presentation": [
      "http://photronics.com/role/DebtInterestPaidForDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest Paid [Abstract]",
        "label": "Interest Paid, Including Capitalized Interest, Operating and Investing Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "INVENTORIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/Inventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "INVENTORIES",
        "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."
       }
      }
     },
     "auth_ref": [
      "r363"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finished goods",
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1007"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Inventories",
        "totalLabel": "Inventories",
        "label": "Inventory, Net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r228",
      "r886",
      "r938"
     ]
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "label": "Inventory, Policy [Policy Text Block]",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r171",
      "r218",
      "r227",
      "r363",
      "r364",
      "r365",
      "r691",
      "r892"
     ]
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryRawMaterialsNetOfReserves",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Raw materials",
        "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."
       }
      }
     },
     "auth_ref": [
      "r131",
      "r890"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Work in process",
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1008"
     ]
    },
    "us-gaap_InvestmentCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InvestmentCreditMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Federal 48D credit [Member]",
        "label": "Investment Tax Credit Carryforward [Member]",
        "documentation": "Investment tax credit carryforwards arising from certain qualifying capital expenditures including, but not limited to, rehabilitation, energy, advanced coal project and gasification project."
       }
      }
     },
     "auth_ref": [
      "r1085"
     ]
    },
    "us-gaap_InvestmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InvestmentPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments",
        "documentation": "Disclosure of accounting policy for investment in financial asset."
       }
      }
     },
     "auth_ref": [
      "r757",
      "r778",
      "r779",
      "r780",
      "r781",
      "r856",
      "r857"
     ]
    },
    "us-gaap_InvestmentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InvestmentsAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "INVESTMENTS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "country_KR": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "KR",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Korea [Member]",
        "label": "Korea [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LandMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LandMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Land [Member]",
        "documentation": "Part of earth's surface not covered by water."
       }
      }
     },
     "auth_ref": [
      "r1073"
     ]
    },
    "us-gaap_LeaseContractualTermAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseContractualTermAxis",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease Contractual Term [Axis]",
        "documentation": "Information by contractual term of lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r648",
      "r985"
     ]
    },
    "us-gaap_LeaseContractualTermDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseContractualTermDomain",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease Contractual Term [Domain]",
        "documentation": "Contractual term of lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r648",
      "r985"
     ]
    },
    "us-gaap_LeaseCostAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseCostAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease, Cost [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseCostTableTextBlock",
     "presentation": [
      "http://photronics.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease Costs",
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income."
       }
      }
     },
     "auth_ref": [
      "r1106"
     ]
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseholdImprovementsMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leasehold Improvements [Member]",
        "documentation": "Additions or improvements to assets held under a lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r133",
      "r647"
     ]
    },
    "us-gaap_LeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeasesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "LEASES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeFinanceLeaseTermOfContract1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeFinanceLeaseTermOfContract1",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease contract term",
        "documentation": "Term of lessee's finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r1105"
     ]
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeasesPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Leases",
        "label": "Lessee, Leases [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee."
       }
      }
     },
     "auth_ref": [
      "r637"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total lease payments",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "plab_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, Payments due after Year Four",
        "terseLabel": "2029 and thereafter"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2025",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2028",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Imputed interest",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "plab_LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock",
     "presentation": [
      "http://photronics.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's weighted-average remaining lease term and weighted-average discount rate.",
        "label": "Lessee, Operating Lease, Weighted Average Remaining Lease Term, Discount Rate [Text Block]",
        "terseLabel": "Weighted-Average Remaining Lease Terms And Weighted-Average Discount Rates"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://photronics.com/role/Leases"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "LEASES",
        "label": "Lessee, Operating Leases [Text Block]",
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r628"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Liabilities",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r84",
      "r85",
      "r86",
      "r89",
      "r90",
      "r91",
      "r94",
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r576",
      "r579",
      "r580",
      "r611",
      "r804",
      "r895",
      "r967",
      "r1065",
      "r1108",
      "r1109"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and equity",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r102",
      "r159",
      "r743",
      "r938",
      "r1020",
      "r1054",
      "r1100"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LIABILITIES AND EQUITY",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "Current liabilities",
        "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."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r217",
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r576",
      "r579",
      "r580",
      "r611",
      "r938",
      "r1065",
      "r1108",
      "r1109"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncurrent liabilities",
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r89",
      "r90",
      "r91",
      "r94",
      "r253",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r576",
      "r579",
      "r580",
      "r611",
      "r1065",
      "r1108",
      "r1109"
     ]
    },
    "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityCurrentBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current borrowing capacity",
        "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r88"
     ]
    },
    "us-gaap_LineOfCreditFacilityExpirationDate1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityExpirationDate1",
     "presentation": [
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Expiration date",
        "documentation": "Date the credit facility terminates, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r88"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtCorporateCreditAgreementDetails",
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum borrowing capacity",
        "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."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r88"
     ]
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/AccountsReceivable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ACCOUNTS RECEIVABLE",
        "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]",
        "documentation": "The entire disclosure for claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r625",
      "r1035"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongLivedAssetsByGeographicAreasTableTextBlock",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Assets by Geographic Area",
        "documentation": "Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets."
       }
      }
     },
     "auth_ref": [
      "r129"
     ]
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtAndCapitalLeaseObligations",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/DebtLongtermDebtDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Long-term debt",
        "totalLabel": "Long-term debt",
        "label": "Long-Term Debt and Lease Obligation",
        "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r736"
     ]
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of long-term debt",
        "label": "Long-Term Debt and Lease Obligation, Current",
        "documentation": "Amount of long-term debt and lease obligation, classified as current."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_LongTermDebtByMaturityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtByMaturityAbstract",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt [Abstract]",
        "label": "Long-Term Debt, Fiscal Year Maturity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_LongTermDebtMaturingInYearOneAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "LongTermDebtMaturingInYearOneAbstract",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long Term Debt Maturing In Year One [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Next 12 months",
        "label": "Long-Term Debt, Maturity, Year One",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r256",
      "r415"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Months 49 - 60",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r256",
      "r415"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Months 37 - 48",
        "label": "Long-Term Debt, Maturity, Year Four",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r256",
      "r415"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Months 25 - 36",
        "label": "Long-Term Debt, Maturity, Year Three",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r256",
      "r415"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Months 13 - 24",
        "label": "Long-Term Debt, Maturity, Year Two",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r256",
      "r415"
     ]
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MachineryAndEquipmentMember",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Machinery and Equipment [Member]",
        "label": "Machinery and Equipment [Member]",
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": []
    },
    "plab_MainstreamFlatPanelDisplaysMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MainstreamFlatPanelDisplaysMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the classification of products by performance.",
        "label": "Mainstream Flat Panel Displays [Member]",
        "terseLabel": "Mainstream [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_MainstreamIntegratedCircuitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MainstreamIntegratedCircuitsMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the classification of products by performance.",
        "label": "Mainstream Integrated Circuits [Member]",
        "terseLabel": "Mainstream [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_MajorCustomer1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MajorCustomer1Member",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents a major customer of the Company.",
        "label": "Major customer 1 [Member]",
        "verboseLabel": "Customer One [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MajorCustomersAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MajorCustomersAxis",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "documentation": "Information by name or description of a single external customer or a group of external customers."
       }
      }
     },
     "auth_ref": [
      "r300",
      "r910",
      "r949",
      "r953",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "plab_ManufacturingFacilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ManufacturingFacilitiesAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing Facilities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ManufacturingFacilitiesByGeographicalRegionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ManufacturingFacilitiesByGeographicalRegionLineItems",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "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": "Manufacturing Facilities By Geographical Region [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ManufacturingFacilitiesByGeographicalRegionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ManufacturingFacilitiesByGeographicalRegionTable",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the operating facilities of the reporting entity by geographical region.",
        "label": "Manufacturing Facilities by Geographical Region [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails",
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "documentation": "Upper limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r186",
      "r188",
      "r189",
      "r191",
      "r211",
      "r212",
      "r382",
      "r383",
      "r384",
      "r385",
      "r469",
      "r515",
      "r596",
      "r690",
      "r766",
      "r768",
      "r776",
      "r796",
      "r797",
      "r854",
      "r858",
      "r860",
      "r861",
      "r863",
      "r879",
      "r880",
      "r899",
      "r907",
      "r918",
      "r929",
      "r930",
      "r934",
      "r935",
      "r950",
      "r1069",
      "r1110",
      "r1111",
      "r1112",
      "r1113",
      "r1114",
      "r1115"
     ]
    },
    "plab_MinimumAgeOfEmployeesToComeUnderRetirementPlan": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MinimumAgeOfEmployeesToComeUnderRetirementPlan",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the minimum age of employees to come under retirement plan.",
        "label": "Minimum age of employees to come under retirement plan",
        "terseLabel": "Minimum age of employees to come under retirement plan"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MinimumMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "documentation": "Lower limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r186",
      "r188",
      "r189",
      "r191",
      "r211",
      "r212",
      "r382",
      "r383",
      "r384",
      "r385",
      "r469",
      "r515",
      "r596",
      "r690",
      "r766",
      "r768",
      "r776",
      "r796",
      "r797",
      "r854",
      "r858",
      "r860",
      "r861",
      "r863",
      "r879",
      "r880",
      "r899",
      "r907",
      "r918",
      "r929",
      "r930",
      "r934",
      "r950",
      "r1069",
      "r1110",
      "r1111",
      "r1112",
      "r1113",
      "r1114",
      "r1115"
     ]
    },
    "plab_MinimumRemainingTermOfPlantAndEquipment": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MinimumRemainingTermOfPlantAndEquipment",
     "presentation": [
      "http://photronics.com/role/CommitmentsAndContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining term physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Minimum Remaining Term of Plant and Equipment",
        "terseLabel": "Minimum remaining term of plant and equipment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_MinorityInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MinorityInterest",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncontrolling interests",
        "documentation": "Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary equity."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r158",
      "r253",
      "r334",
      "r388",
      "r390",
      "r391",
      "r392",
      "r395",
      "r396",
      "r611",
      "r742",
      "r808"
     ]
    },
    "us-gaap_MoneyMarketFundsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MoneyMarketFundsMember",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Money Market Funds [Member]",
        "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities."
       }
      }
     },
     "auth_ref": [
      "r1076"
     ]
    },
    "plab_MonthlyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "MonthlyMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance lease monthly payments.",
        "label": "Monthly [Member]",
        "terseLabel": "Monthly [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_NameOfMajorCustomerDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "NameOfMajorCustomerDomain",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "documentation": "Single external customer or group of external customers."
       }
      }
     },
     "auth_ref": [
      "r300",
      "r910",
      "r949",
      "r953",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in financing activities",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "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."
       }
      }
     },
     "auth_ref": [
      "r247"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows used in financing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in investing activities",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "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."
       }
      }
     },
     "auth_ref": [
      "r247"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows used in investing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by operating activities",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "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."
       }
      }
     },
     "auth_ref": [
      "r122",
      "r123",
      "r125"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income attributable to Photronics, Inc. shareholders",
        "label": "Net income attributable to Photronics, Inc. shareholders",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r125",
      "r163",
      "r215",
      "r232",
      "r235",
      "r240",
      "r253",
      "r260",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r269",
      "r270",
      "r278",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r570",
      "r573",
      "r590",
      "r611",
      "r750",
      "r826",
      "r847",
      "r848",
      "r965",
      "r1065"
     ]
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLossAttributableToNoncontrollingInterest",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net income attributable to noncontrolling interests",
        "label": "Net Income (Loss) Attributable to Noncontrolling Interest",
        "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r70",
      "r147",
      "r232",
      "r235",
      "r266",
      "r269",
      "r270",
      "r749",
      "r1012"
     ]
    },
    "us-gaap_NetIncomeLossAttributableToParentDiluted": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLossAttributableToParentDiluted",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Earnings used for diluted earnings per share",
        "label": "Net Income (Loss) Attributable to Parent, Diluted",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent, and includes adjustments resulting from the assumption that dilutive convertible securities were converted, options or warrants were exercised, or that other shares were issued upon the satisfaction of certain conditions."
       }
      }
     },
     "auth_ref": []
    },
    "plab_NetSettlementsOfRestrictedStockAwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NetSettlementsOfRestrictedStockAwards",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from the net settlement of restricted stock awards.",
        "label": "Net Settlements of Restricted Stock Awards",
        "negatedLabel": "Net settlements of restricted stock awards"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recent Accounting Pronouncements",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://photronics.com/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted",
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]"
       }
      }
     },
     "auth_ref": [
      "r977"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://photronics.com/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated",
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]"
       }
      }
     },
     "auth_ref": [
      "r977"
     ]
    },
    "us-gaap_NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contribution from noncontrolling interest",
        "label": "Noncontrolling Interest, Increase from Subsidiary Equity Issuance",
        "documentation": "Amount of increase in noncontrolling interest from subsidiary issuance of equity interests to noncontrolling interest holders."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r46",
      "r146"
     ]
    },
    "us-gaap_NoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoncontrollingInterestMember",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-controlling Interests [Member]",
        "label": "Noncontrolling Interest [Member]",
        "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r426",
      "r1024",
      "r1025",
      "r1026",
      "r1027",
      "r1154"
     ]
    },
    "us-gaap_NoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoncurrentAssets",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-lived Assets",
        "label": "Long-Lived Assets",
        "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r299"
     ]
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NonoperatingIncomeExpenseAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-operating income (expense):"
       }
      }
     },
     "auth_ref": []
    },
    "plab_NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to minimum number of business days for obtaining required approvals and clearance for exiting party from the agreement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Number of Business Days for Obtaining Required Approvals and Clearance for Exiting Party",
        "terseLabel": "Number of business days for obtaining required approvals and clearance for exiting party"
       }
      }
     },
     "auth_ref": []
    },
    "plab_NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of consecutive months an investor's ownership can be below 20% before an option to put or purchase the investor's ownership interest may be exercised, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Number of Consecutive Months Ownership Interest may Fall Below Twenty Percent For Put or Purchase Options to be Exercised",
        "terseLabel": "Period before put or purchase option can be exercised"
       }
      }
     },
     "auth_ref": []
    },
    "plab_NumberOfExecutivesDeparted": {
     "xbrltype": "integerItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NumberOfExecutivesDeparted",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of senior executives departed from the company during the period.",
        "label": "Number of Executives Departed",
        "terseLabel": "Number of executives departed from company"
       }
      }
     },
     "auth_ref": []
    },
    "plab_NumberOfManufacturingFacilities": {
     "xbrltype": "integerItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NumberOfManufacturingFacilities",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This line item represents the number of manufacturing facilities of the entity.",
        "label": "Number of manufacturing facilities",
        "terseLabel": "Number of manufacturing facilities"
       }
      }
     },
     "auth_ref": []
    },
    "plab_NumberOfMonthsOfServiceCompleted": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "NumberOfMonthsOfServiceCompleted",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the number of months of service completed to come under retirement plans.",
        "label": "Number of months of service completed",
        "terseLabel": "Number of months of service completed to come under retirement plan"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total operating expenses",
        "label": "Operating Expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpensesAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating income",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r167",
      "r896",
      "r1030",
      "r1031",
      "r1032",
      "r1033",
      "r1034"
     ]
    },
    "us-gaap_OperatingLeaseCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseCost",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease costs",
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability."
       }
      }
     },
     "auth_ref": [
      "r639",
      "r937"
     ]
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Future Lease Payments Under Noncancelable Operating Leases [Abstract]",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesFutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesDetails",
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease liabilities",
        "totalLabel": "Lease Liabilities - Operating Leases",
        "label": "Operating Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r631"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityAbstract",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease Liability [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease Liability - Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r631"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails",
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease Liability, Noncurrent",
        "terseLabel": "Operating lease",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r631"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "us-gaap_OperatingLeasePayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeasePayments",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating cash flows used for operating leases",
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use."
       }
      }
     },
     "auth_ref": [
      "r636",
      "r642"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ROU Assets - Operating Leases",
        "label": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r630"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://photronics.com/role/LeasesInformationOnOperatingAndFinanceLeasesIncludedOnBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset."
       }
      }
     },
     "auth_ref": [
      "r632"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating leases, Weighted-average discount rate",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r645",
      "r937"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating leases, Weighted-average remaining lease term",
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r644",
      "r937"
     ]
    },
    "us-gaap_OperatingLossCarryforwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLossCarryforwards",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating loss carryforwards amount",
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_OperatingLossCarryforwardsExpirationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLossCarryforwardsExpirationDate",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Expiration periods",
        "documentation": "Expiration date of each operating loss carryforward included in operating loss carryforward, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLossCarryforwardsLineItems",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Loss Carryforwards [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLossCarryforwardsTable",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Loss Carryforwards [Table]",
        "documentation": "Disclosure of information about operating loss carryforward. Includes, but is not limited to, tax authority, amount and expiration date of operating loss carryforward, and likelihood of utilization."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "PDMCX JOINT VENTURE [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Accrued Liabilities, Current",
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Other current assets",
        "totalLabel": "Total other current assets",
        "label": "Other Assets, Current",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r230",
      "r938"
     ]
    },
    "us-gaap_OtherAssetsMiscellaneousCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsMiscellaneousCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Other",
        "label": "Other Assets, Miscellaneous, Current",
        "documentation": "Amount of other miscellaneous assets expected to be realized or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r222"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss)",
        "label": "Other Comprehensive Income (Loss), before Reclassifications, Net of Tax",
        "documentation": "Amount after tax, before reclassification adjustments of other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r22",
      "r239",
      "r618",
      "r621",
      "r624",
      "r751",
      "r1010"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation adjustments",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r751"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income (loss)",
        "totalLabel": "Net other comprehensive income (loss)",
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r18",
      "r233",
      "r236",
      "r241",
      "r266",
      "r618",
      "r619",
      "r624",
      "r725",
      "r751",
      "r1010",
      "r1011"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss), net of tax of $0:",
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other comprehensive income (loss) attributable to noncontrolling interests",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to noncontrolling interests."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r13",
      "r145",
      "r233",
      "r236",
      "r266"
     ]
    },
    "plab_OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net of tax amount of the appreciation (loss) for other adjustments.",
        "label": "Other Comprehensive Income (Loss), Other Adjustments, Net of Tax",
        "terseLabel": "Other"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossTax",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLossParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss), tax",
        "label": "Other comprehensive (loss) income, tax",
        "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r238",
      "r241",
      "r525",
      "r563",
      "r564",
      "r618",
      "r622",
      "r624",
      "r725",
      "r751"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeNoncontrollingInterestTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeNoncontrollingInterestTextBlock",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponent"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT",
        "label": "Other Comprehensive Income, Noncontrolling Interest [Text Block]",
        "documentation": "The entire disclosure for tabular information relating to Other Comprehensive Income (OCI) as is applicable to noncontrolling interests. This text block may also include OCI relative to the filing entity, the aforementioned noncontrolling interest OCI, as well as OCI on a consolidated basis."
       }
      }
     },
     "auth_ref": [
      "r144"
     ]
    },
    "us-gaap_OtherCurrentAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherCurrentAssetsMember",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Current Assets [Member]",
        "documentation": "Primary financial statement caption encompassing other current assets."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r74"
     ]
    },
    "us-gaap_OtherCurrentAssetsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherCurrentAssetsTextBlock",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "OTHER CURRENT ASSETS",
        "label": "Other Current Assets [Text Block]",
        "documentation": "The entire disclosure for other current assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherCurrentLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherCurrentLiabilitiesTableTextBlock",
     "presentation": [
      "http://photronics.com/role/AccruedLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued Liabilities",
        "label": "Other Current Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of other current liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherLiabilitiesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "OTHER LIABILITIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherLiabilitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/OtherLiabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "OTHER LIABILITIES",
        "documentation": "The entire disclosure for other liabilities."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r90",
      "r1055"
     ]
    },
    "us-gaap_OtherLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesMember",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Liabilities [Member]",
        "documentation": "Primary financial statement caption encompassing other liabilities."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r74"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other liabilities",
        "totalLabel": "Other liabilities",
        "label": "Other Liabilities, Noncurrent",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r90"
     ]
    },
    "us-gaap_OtherLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesTableTextBlock",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Liabilities",
        "label": "Other Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of other liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "plab_OtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "OtherMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents one of the geographical areas where entity's activities take place.",
        "label": "Other [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Interest income and other income, net",
        "label": "Other Nonoperating Income (Expense)",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r117"
     ]
    },
    "us-gaap_OtherSundryLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherSundryLiabilitiesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other",
        "documentation": "Obligations not otherwise itemized or categorized in the footnotes to the financial statements that are expected to be paid after one year (or the normal operating cycle, if longer), from the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r155"
     ]
    },
    "plab_OutstandingCommittedBalanceForCrossDefaultProvision": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "OutstandingCommittedBalanceForCrossDefaultProvision",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Committed balance outstanding for cross default provision for any agreement or instrument.",
        "label": "Outstanding Committed Balance for Cross Default Provision",
        "terseLabel": "Outstanding committed balance for cross default provision"
       }
      }
     },
     "auth_ref": []
    },
    "plab_PDMCXMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PDMCXMember",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The joint venture.",
        "label": "PDMCX [Member]",
        "terseLabel": "Carrying Amount [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other."
       }
      }
     },
     "auth_ref": [
      "r981",
      "r1014"
     ]
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of treasury stock",
        "label": "Payments for Repurchase of Common Stock",
        "documentation": "The cash outflow to reacquire common stock during the period."
       }
      }
     },
     "auth_ref": [
      "r120"
     ]
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireIntangibleAssets",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of intangible assets",
        "label": "Payments to Acquire Intangible Assets",
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of property, plant and equipment",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "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."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap_PaymentsToAcquireShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireShortTermInvestments",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of short-term investments",
        "label": "Payments to Acquire Short-Term Investments",
        "documentation": "The cash outflow for securities or other assets acquired, which qualify for treatment as an investing activity and are to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term."
       }
      }
     },
     "auth_ref": [
      "r118"
     ]
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/EmployeeRetirementPlans"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "EMPLOYEE RETIREMENT PLANS",
        "label": "Retirement Benefits [Text Block]",
        "documentation": "The entire disclosure for retirement benefits."
       }
      }
     },
     "auth_ref": [
      "r451",
      "r452",
      "r453",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r917"
     ]
    },
    "plab_PercentageOfOwnershipInterestInSubsidiaries": {
     "xbrltype": "percentItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PercentageOfOwnershipInterestInSubsidiaries",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncontrolling interests in subsidiaries related to Photronics ownership interests of less than are reported as Noncontrolling interests in the consolidated balance sheets.",
        "label": "Percentage of Ownership Interest in Subsidiaries",
        "terseLabel": "Percentage of ownership interest in subsidiaries"
       }
      }
     },
     "auth_ref": []
    },
    "plab_PeriodOfWarranty": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PeriodOfWarranty",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the period of warranty coverage of products sold, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Period of warranty",
        "terseLabel": "Product warranty period"
       }
      }
     },
     "auth_ref": []
    },
    "plab_PhotronicsAndDNPMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PhotronicsAndDNPMember",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The joint venture.",
        "label": "Photronics and DNP [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PostemploymentBenefitsLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PostemploymentBenefitsLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Post employment benefit",
        "documentation": "For a classified balance sheet, the carrying amount as of the balance sheet date of the portion of the obligations recognized for the various benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement that is payable after one year (or beyond the operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r1074",
      "r1075"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r424"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, shares authorized (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r806"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, shares issued (in shares)",
        "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r424"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, shares outstanding (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r806",
      "r824",
      "r1154",
      "r1155"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, $0.01 par value, 2,000 shares authorized, none issued and outstanding",
        "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."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r738",
      "r938"
     ]
    },
    "plab_PrepaidAndRefundableIncomeTaxes": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PrepaidAndRefundableIncomeTaxes",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of prepaid and refundable income taxes classified as current.",
        "label": "Prepaid and Refundable Income Taxes",
        "terseLabel": "Prepaid and refundable income taxes"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsCurrentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "OTHER CURRENT ASSETS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Prepaid Expense, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r229",
      "r366",
      "r367",
      "r888"
     ]
    },
    "plab_PrinciplesOfConsolidationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "PrinciplesOfConsolidationAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Principles of Consolidation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ProceedsFromGovernmentIncentives": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ProceedsFromGovernmentIncentives",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from government incentives during the period.",
        "label": "Proceeds From Government Incentives",
        "terseLabel": "Government incentives"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromIncomeTaxRefunds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIncomeTaxRefunds",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax refunds received",
        "documentation": "Amount of income tax refund received from tax jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r123",
      "r1017",
      "r1083",
      "r1084"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from share-based arrangements",
        "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r17"
     ]
    },
    "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from maturities of short-term investments",
        "documentation": "The cash inflow from maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r118"
     ]
    },
    "us-gaap_ProceedsFromMinorityShareholders": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromMinorityShareholders",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contributions from noncontrolling interests",
        "documentation": "Amount of cash inflow from a noncontrolling interest. Includes, but is not limited to, purchase of additional shares or other increase in noncontrolling interest ownership."
       }
      }
     },
     "auth_ref": [
      "r25"
     ]
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromStockOptionsExercised",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash received from options exercises",
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r17"
     ]
    },
    "plab_ProductInvoiceTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ProductInvoiceTerm",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The term of the product invoiced for payment settlement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Product Invoice Term",
        "terseLabel": "Product invoice term"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products and Services [Axis]",
        "documentation": "Information by product and service, or group of similar products and similar services."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r210",
      "r297",
      "r692",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r883",
      "r908",
      "r948",
      "r950",
      "r951",
      "r954",
      "r956",
      "r1004",
      "r1062",
      "r1063",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "plab_ProductWarrantyAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ProductWarrantyAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products and Services [Domain]",
        "documentation": "Product or service, or a group of similar products or similar services."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r210",
      "r297",
      "r692",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r883",
      "r908",
      "r948",
      "r950",
      "r951",
      "r954",
      "r956",
      "r1004",
      "r1062",
      "r1063",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1125",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows",
      "http://photronics.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity",
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net income",
        "totalLabel": "Net income",
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r215",
      "r232",
      "r235",
      "r246",
      "r253",
      "r260",
      "r266",
      "r269",
      "r270",
      "r334",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r570",
      "r573",
      "r574",
      "r577",
      "r578",
      "r590",
      "r611",
      "r730",
      "r748",
      "r790",
      "r826",
      "r847",
      "r848",
      "r924",
      "r925",
      "r966",
      "r1012",
      "r1065"
     ]
    },
    "plab_ProjectLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ProjectLoanMember",
     "presentation": [
      "http://photronics.com/role/DebtXiamenProjectLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Written promise to pay a note which can be exchanged for a specified quantity of securities (typically common stock), at the option of the issuer or the holder.",
        "label": "Project Loan [Member]",
        "terseLabel": "Xiamen Project Loans [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ProjectLoansAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ProjectLoansAbstract",
     "presentation": [
      "http://photronics.com/role/DebtXiamenProjectLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Project Loans [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PROPERTY, PLANT, AND EQUIPMENT, NET [Abstract]",
        "terseLabel": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Type [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r647"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "PROPERTY, PLANT AND EQUIPMENT, NET",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections."
       }
      }
     },
     "auth_ref": [
      "r132",
      "r174",
      "r178",
      "r179"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, plant and equipment, gross",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r133",
      "r220",
      "r746"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r647"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment, net",
        "totalLabel": "Property, plant and equipment, net",
        "label": "Property, Plant and Equipment, Net",
        "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."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r647",
      "r732",
      "r746",
      "r938"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNetByTypeAbstract",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment [Abstract]",
        "label": "Property, Plant and Equipment, Net, by Type [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment, Net",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r174",
      "r178",
      "r744"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment, Net",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [Domain]",
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software."
       }
      }
     },
     "auth_ref": [
      "r133",
      "r647"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Estimated useful lives",
        "label": "Property, Plant and Equipment, Useful Life",
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r186",
      "r188",
      "r189",
      "r191",
      "r211",
      "r212",
      "r382",
      "r383",
      "r384",
      "r385",
      "r452",
      "r469",
      "r501",
      "r502",
      "r503",
      "r515",
      "r596",
      "r662",
      "r674",
      "r690",
      "r766",
      "r768",
      "r776",
      "r796",
      "r797",
      "r854",
      "r858",
      "r860",
      "r861",
      "r863",
      "r879",
      "r880",
      "r899",
      "r907",
      "r918",
      "r929",
      "r930",
      "r934",
      "r935",
      "r950",
      "r959",
      "r1060",
      "r1069",
      "r1096",
      "r1111",
      "r1112",
      "r1113",
      "r1114",
      "r1115"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails",
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails",
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r186",
      "r188",
      "r189",
      "r191",
      "r211",
      "r212",
      "r382",
      "r383",
      "r384",
      "r385",
      "r452",
      "r469",
      "r501",
      "r502",
      "r503",
      "r515",
      "r596",
      "r662",
      "r674",
      "r690",
      "r766",
      "r768",
      "r776",
      "r796",
      "r797",
      "r854",
      "r858",
      "r860",
      "r861",
      "r863",
      "r879",
      "r880",
      "r899",
      "r907",
      "r918",
      "r929",
      "r930",
      "r934",
      "r935",
      "r950",
      "r959",
      "r1060",
      "r1069",
      "r1096",
      "r1111",
      "r1112",
      "r1113",
      "r1114",
      "r1115"
     ]
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in Accumulated Other Comprehensive Income [Roll Forward]",
        "label": "AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unrecognized Tax Benefits [Abstract]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "plab_RelatedPartyAgreementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "RelatedPartyAgreementAbstract",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Agreement [Abstract]",
        "terseLabel": "Related Party Agreement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RelatedPartyTransactionLineItems",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transaction [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r301",
      "r829",
      "r830",
      "r833"
     ]
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RelatedPartyTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "RELATED PARTY TRANSACTIONS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "RELATED PARTY TRANSACTIONS",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates."
       }
      }
     },
     "auth_ref": [
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r786",
      "r787",
      "r788",
      "r831",
      "r832",
      "r833",
      "r852",
      "r853"
     ]
    },
    "us-gaap_RepaymentsOfDebtAndCapitalLeaseObligations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfDebtAndCapitalLeaseObligations",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repayments of debt",
        "label": "Repayments of Debt and Lease Obligation",
        "documentation": "Amount of cash outflow for short-term and long-term debt and lease obligation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfLongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/DebtXiamenProjectLoansDetails",
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Repayments of long-term debt",
        "label": "Repayments of Long-Term Debt",
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r121",
      "r783"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpense",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Research and development",
        "verboseLabel": "Research and development expenses",
        "label": "Research and Development Expense",
        "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity."
       }
      }
     },
     "auth_ref": [
      "r518",
      "r881",
      "r897",
      "r1116"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpenseAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesResearchAndDevelopmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development Expense [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpenseMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development [Member]",
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development",
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process."
       }
      }
     },
     "auth_ref": [
      "r517"
     ]
    },
    "us-gaap_ResearchMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Federal Research and Development [Member]",
        "label": "Research Tax Credit Carryforward [Member]",
        "documentation": "Research tax credit carryforwards arising from certain qualifying expenditures incurred to develop new products and processes."
       }
      }
     },
     "auth_ref": [
      "r1085"
     ]
    },
    "us-gaap_RestrictedCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedCash",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Less: Ending restricted cash",
        "verboseLabel": "Restricted cash",
        "label": "Restricted Cash",
        "documentation": "Amount of cash restricted as to withdrawal or usage. 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."
       }
      }
     },
     "auth_ref": [
      "r1005",
      "r1018",
      "r1117",
      "r1118"
     ]
    },
    "us-gaap_RestrictedCashAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedCashAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRestrictedCashDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Cash [Abstract]",
        "label": "Restricted Cash [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Domain]",
        "documentation": "Type of cash and cash equivalent. Cash is 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."
       }
      }
     },
     "auth_ref": [
      "r219"
     ]
    },
    "us-gaap_RestrictedStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r139",
      "r741",
      "r773",
      "r775",
      "r784",
      "r807",
      "r938"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained Earnings [Member]",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r213",
      "r257",
      "r258",
      "r259",
      "r261",
      "r266",
      "r268",
      "r270",
      "r335",
      "r336",
      "r371",
      "r557",
      "r558",
      "r567",
      "r568",
      "r569",
      "r571",
      "r572",
      "r573",
      "r581",
      "r583",
      "r584",
      "r586",
      "r588",
      "r626",
      "r629",
      "r770",
      "r772",
      "r791",
      "r1154"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "REVENUE [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/RelatedPartyTransactionsDetails",
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenue",
        "label": "Revenue",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r165",
      "r166",
      "r287",
      "r290",
      "r291",
      "r294",
      "r296",
      "r297",
      "r298",
      "r300",
      "r446",
      "r447",
      "r692"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/RevenuePolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for revenue from contract with customer."
       }
      }
     },
     "auth_ref": [
      "r182",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r882"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://photronics.com/role/Revenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "REVENUE",
        "label": "Revenue from Contract with Customer [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r182",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r450"
     ]
    },
    "us-gaap_RevenuePerformanceObligationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenuePerformanceObligationAbstract",
     "presentation": [
      "http://photronics.com/role/RevenueContractAssetsLiabilitiesAndAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue, Performance Obligation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueRecognitionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRecognitionAbstract",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesRevenueRecognitionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue Recognition [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRecognitionPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue Recognition",
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources."
       }
      }
     },
     "auth_ref": [
      "r827",
      "r882",
      "r893"
     ]
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesOperatingAndFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ROU assets obtained in exchange for operating lease obligations",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r643",
      "r937"
     ]
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RisksAndUncertaintiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "RISKS AND CONCENTRATIONS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://photronics.com/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 10b5-1 Arrangement Adopted",
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]"
       }
      }
     },
     "auth_ref": [
      "r977"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://photronics.com/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 10b5-1 Arrangement Terminated",
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]"
       }
      }
     },
     "auth_ref": [
      "r977"
     ]
    },
    "us-gaap_SalesRevenueNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesRevenueNetMember",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r300",
      "r983"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "presentation": [
      "http://photronics.com/role/AccountsReceivableTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts Receivable",
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]",
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r103"
     ]
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in Accumulated Other Comprehensive (Loss) Income by Component",
        "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r1101",
      "r1102"
     ]
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]",
        "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding Securities Excluded from Calculation of Diluted Earnings or Loss Per Share",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]",
        "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Securities, Available-for-Sale [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315"
     ]
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Provision",
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years."
       }
      }
     },
     "auth_ref": [
      "r1087"
     ]
    },
    "srt_ScheduleOfCondensedIncomeStatementTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ScheduleOfCondensedIncomeStatementTableTextBlock",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income Recorded from Operations",
        "documentation": "Tabular disclosure of condensed income statement, including, but not limited to, income statements of consolidated entities and consolidation eliminations."
       }
      }
     },
     "auth_ref": [
      "r995",
      "r1023"
     ]
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfDebtTableTextBlock",
     "presentation": [
      "http://photronics.com/role/DebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term Debt",
        "label": "Schedule of Debt [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Deferred Income Tax Assets",
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r1082"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Calculation of Basic and Diluted Earnings Per Share",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r1028"
     ]
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Rate Reconciliation",
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r923",
      "r1080"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Expenses",
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement."
       }
      }
     },
     "auth_ref": [
      "r53"
     ]
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Before Income Tax Provision for Domestic and Foreign",
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions."
       }
      }
     },
     "auth_ref": [
      "r1021"
     ]
    },
    "plab_ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income taxes paid and refunds.",
        "label": "Schedule of Income Taxes Paid and Refunds [Table Text Block]",
        "terseLabel": "Income Tax Payments and Refunds"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://photronics.com/role/InventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r104",
      "r105",
      "r106"
     ]
    },
    "us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfOtherCurrentAssetsTableTextBlock",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Current Assets",
        "label": "Schedule of Other Current Assets [Table Text Block]",
        "documentation": "Tabular disclosure of the carrying amounts of other current assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://photronics.com/role/PropertyPlantAndEquipmentNetDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipmentNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Table]",
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r647"
     ]
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "presentation": [
      "http://photronics.com/role/RelatedPartyTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Related Party Transactions, by Related Party [Table]",
        "documentation": "Disclosure of information about related party transaction."
       }
      }
     },
     "auth_ref": [
      "r77",
      "r78",
      "r829",
      "r830",
      "r833"
     ]
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]",
        "documentation": "Disclosure of information about revenue from external customer and long-lived asset by geographical area. Long-lived asset excludes financial instrument, customer relationship with financial institution, mortgage and other servicing right, deferred policy acquisition cost, and deferred tax asset."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r110"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Information on Stock Option Awards",
        "documentation": "Tabular disclosure of the total intrinsic value of options exercised (or share units converted), share-based liabilities paid, and the total fair value of shares vested during the year."
       }
      }
     },
     "auth_ref": [
      "r142"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r471",
      "r473",
      "r476",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock Awards Activity",
        "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year."
       }
      }
     },
     "auth_ref": [
      "r141"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Options Activity",
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r16",
      "r141"
     ]
    },
    "us-gaap_ScheduleOfTreasuryStockByClassTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfTreasuryStockByClassTextBlock",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares Repurchase Programs",
        "documentation": "Tabular disclosure of treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r48",
      "r49",
      "r50"
     ]
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reconciliation of Beginning and Ending Amounts of Unrecognized Tax Benefits",
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits."
       }
      }
     },
     "auth_ref": [
      "r540",
      "r922"
     ]
    },
    "plab_ScheduleOfUnrecognizedTaxBenefitsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ScheduleOfUnrecognizedTaxBenefitsTableTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of unrecognized tax benefits.",
        "label": "Schedule Of Unrecognized Tax Benefits [Table Text Block]",
        "terseLabel": "Unrecognized Tax Benefits"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfVariableInterestEntitiesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfVariableInterestEntitiesTable",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Interest Entity [Table]",
        "documentation": "Disclosure of information about variable interest held, whether or not such variable interest entity (VIE) is included in consolidated financial statements."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62",
      "r64",
      "r67",
      "r68",
      "r575",
      "r576",
      "r579",
      "r580",
      "r670",
      "r671",
      "r672"
     ]
    },
    "us-gaap_ScheduleOfVariableInterestEntitiesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfVariableInterestEntitiesTextBlock",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carrying Amounts and Exposure to Loss Related to Assets and Liabilities",
        "documentation": "Tabular disclosure of the significant judgments and assumptions made in determining whether a variable interest (as defined) held by the entity requires the variable interest entity (VIE) (as defined) to be consolidated and (or) disclose information about its involvement with the VIE, individually or in aggregate (as applicable); the nature of restrictions, if any, on the consolidated VIE's assets and on the settlement of its liabilities reported by an entity in its statement of financial position, including the carrying amounts of such assets and liabilities; the nature of, and changes in, the risks associated with involvement in the VIE; how involvement with the VIE affects the entity's financial position, financial performance, and cash flows; the lack of recourse if creditors (or beneficial interest holders) of the consolidated VIE have no recourse to the general credit of the primary beneficiary (if applicable); the terms of arrangements, giving consideration to both explicit arrangements and implicit variable interests, if any, that could require the entity to provide financial support to the VIE, including events or circumstances that could expose the entity to a loss; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; the significant factors considered and judgments made in determining that the power to direct the activities of a VIE that most significantly impact the VIE's economic performance are shared (as defined); the carrying amounts and classification of assets and liabilities of the VIE included in the statement of financial position; the entity's maximum exposure to loss, if any, as a result of its involvement with the VIE, including how the maximum exposure is determined and significant sources of the entity's exposure to the VIE; a comparison of the carrying amounts of the assets and liabilities and the entity's maximum exposure to loss; information about any liquidity arrangements, guarantees, and (or) other commitments by third parties that may affect the fair value or risk of the entity's variable interest in the VIE; whether or not the entity has provided financial support or other support (explicitly or implicitly) to the VIE that it was not previously contractually required to provide or whether the entity intends to provide that support, including the type and amount of the support and the primary reasons for providing the support; and supplemental information the entity determines necessary to provide."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62",
      "r64",
      "r67",
      "r68"
     ]
    },
    "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
     "presentation": [
      "http://photronics.com/role/RisksAndConcentrationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration of Risk Factor",
        "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r36",
      "r37",
      "r38",
      "r75",
      "r149"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r968"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r970"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "documentation": "Geographical area."
       }
      }
     },
     "auth_ref": [
      "r185",
      "r187",
      "r190",
      "r192",
      "r199",
      "r200",
      "r201",
      "r202",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r298",
      "r299",
      "r693",
      "r694",
      "r695",
      "r696",
      "r697",
      "r698",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r793",
      "r794",
      "r795",
      "r855",
      "r859",
      "r862",
      "r864",
      "r866",
      "r869",
      "r870",
      "r871",
      "r872",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r884",
      "r909",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r952",
      "r959",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, general and administrative",
        "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."
       }
      }
     },
     "auth_ref": [
      "r116"
     ]
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, General and Administrative [Member]",
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "plab_September2020AnnouncedProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "September2020AnnouncedProgramMember",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The September 2020 announced program.",
        "label": "September 2020 Announced Program [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_Seven2MillionFinanceLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "Seven2MillionFinanceLeaseMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to the $7.2 million finance lease.",
        "label": "7.2 Million Finance Lease [Member]",
        "terseLabel": "$7.2 Million Finance Lease [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedArrangementsToObtainGoodsAndServicesAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Compensation [Abstract]",
        "label": "Share-Based Payment Arrangement, Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based compensation",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award vesting period",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r919"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock, additional disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative number of shares that have been issued since the inception of the Company's employee stock purchase plan.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Cumulative Shares Issued",
        "terseLabel": "Total shares issued since inception (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number as of the balance sheet date of outstanding restricted stock awards that are expected to vest.",
        "label": "Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other than Options, Expected to Vest",
        "terseLabel": "Expected to vest (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average fair value at grant date of restricted stock that is expected to vest.",
        "label": "Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Expected to Vest, Weighted Average Grant Date Fair Value",
        "terseLabel": "Expected to vest (in dollars per share)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Cancelled (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r493"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cancelled (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event."
       }
      }
     },
     "auth_ref": [
      "r493"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Granted (in shares)",
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r491"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Granted (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r491"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Outstanding at end of period (in shares)",
        "periodStartLabel": "Outstanding at beginning of period (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r488",
      "r489"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shares [Roll Forward]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Outstanding at end of period (in dollars per share)",
        "periodStartLabel": "Outstanding at beginning of period (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r488",
      "r489"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-Average Fair Value at Grant Date [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Vested (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r492"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair value of awards for which restrictions lapsed",
        "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash."
       }
      }
     },
     "auth_ref": [
      "r495"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vested (in dollars per share)",
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement."
       }
      }
     },
     "auth_ref": [
      "r492"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r471",
      "r473",
      "r476",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional shares available for issuance (in shares)",
        "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum number of shares of common stock that may be issued (in shares)",
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r921"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Options Exercised [Abstract]",
        "terseLabel": "Stock Options [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share based Compensation Arrangement by Share based Payment Award, Options, Aggregate Intrinsic Value [Abstract]",
        "terseLabel": "Aggregate Intrinsic Value [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares under options that were cancelled, forfeited, or adjusted during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Cancellations, Forfeitures and Adjustments in Period",
        "negatedLabel": "Cancellations, forfeitures, and adjustments (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Exercisable at end of period (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number",
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan."
       }
      }
     },
     "auth_ref": [
      "r482"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Exercisable at end of period (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r482"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total intrinsic value of options exercised",
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares."
       }
      }
     },
     "auth_ref": [
      "r495"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cancellations, forfeitures, and adjustments (in dollars per share)",
        "documentation": "Weighted average price of options that were either forfeited or expired."
       }
      }
     },
     "auth_ref": [
      "r1077"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Granted (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "documentation": "Gross number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r484"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Information on Restricted Stock Awards",
        "documentation": "Tabular disclosure of the weighted-average grant-date fair value of equity options or other equity instruments granted during the year."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding at end of period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value",
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Outstanding at end of period (in shares)",
        "periodStartLabel": "Outstanding at beginning of period (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r480",
      "r481"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Outstanding at beginning of period (in dollars per share)",
        "periodEndLabel": "Outstanding at end of period (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r480",
      "r481"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted-Average Exercise Price [Abstract]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected to vest",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r496"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected to vest (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r496"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected to vest (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price",
        "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur."
       }
      }
     },
     "auth_ref": [
      "r496"
     ]
    },
    "plab_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsWeightedAverageRemainingContractualTermAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share based Compensation Arrangement by Share based Payment Award Options Weighted Average Remaining Contractual Term [Abstract]",
        "terseLabel": "Weighted-Average Remaining Contractual Life [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails",
      "http://photronics.com/role/SharebasedCompensationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Award [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r476",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exercised (in dollars per share)",
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares."
       }
      }
     },
     "auth_ref": [
      "r485"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Granted (in dollars per share)",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options."
       }
      }
     },
     "auth_ref": [
      "r484"
     ]
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationPolicies",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-Based Compensation",
        "label": "Share-Based Payment Arrangement [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost."
       }
      }
     },
     "auth_ref": [
      "r470",
      "r479",
      "r498",
      "r499",
      "r500",
      "r501",
      "r504",
      "r510",
      "r511",
      "r512",
      "r513"
     ]
    },
    "srt_ShareRepurchaseProgramAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramAxis",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Axis]",
        "documentation": "Information by share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r1070"
     ]
    },
    "srt_ShareRepurchaseProgramDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramDomain",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Domain]",
        "documentation": "Name of share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r1070"
     ]
    },
    "plab_ShareRepurchaseProgramsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "ShareRepurchaseProgramsMember",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shares repurchased as part of a share repurchase program.",
        "label": "Share Repurchase Programs [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual term",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period",
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r920"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Exercisable at end of period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value",
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Exercisable at end of period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Outstanding at end of period",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r143"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Percent of market price that participants pay for shares subscribed",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent",
        "documentation": "Purchase price of common stock expressed as a percentage of its fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesOutstanding",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Balance (in shares)",
        "periodStartLabel": "Balance (in shares)",
        "label": "Shares, Outstanding",
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermDebtWeightedAverageInterestRateOverTime": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShortTermDebtWeightedAverageInterestRateOverTime",
     "presentation": [
      "http://photronics.com/role/DebtInterestPaidForDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average interest rate",
        "documentation": "Weighted average interest rate of short-term debt outstanding calculated over time."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShortTermInvestments",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-term investments",
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r161",
      "r1009"
     ]
    },
    "us-gaap_ShortTermLeaseCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShortTermLeaseCost",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-term lease costs",
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less."
       }
      }
     },
     "auth_ref": [
      "r640",
      "r937"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES",
        "label": "Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r250"
     ]
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StateAndLocalJurisdictionMember",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State [Member]",
        "label": "State and Local Jurisdiction [Member]",
        "documentation": "Designated state or local jurisdiction entitled to levy and collect income tax."
       }
      }
     },
     "auth_ref": [
      "r527"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r96",
      "r100",
      "r101",
      "r213",
      "r238",
      "r239",
      "r240",
      "r257",
      "r258",
      "r259",
      "r261",
      "r266",
      "r268",
      "r270",
      "r288",
      "r335",
      "r336",
      "r371",
      "r426",
      "r557",
      "r558",
      "r567",
      "r568",
      "r569",
      "r571",
      "r572",
      "r573",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r588",
      "r618",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r626",
      "r629",
      "r649",
      "r751",
      "r770",
      "r771",
      "r772",
      "r791",
      "r849"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "documentation": "Information by geographical components."
       }
      }
     },
     "auth_ref": [
      "r185",
      "r187",
      "r190",
      "r192",
      "r199",
      "r200",
      "r201",
      "r202",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r298",
      "r299",
      "r693",
      "r694",
      "r695",
      "r696",
      "r697",
      "r698",
      "r699",
      "r700",
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r793",
      "r794",
      "r795",
      "r855",
      "r859",
      "r862",
      "r864",
      "r866",
      "r869",
      "r870",
      "r871",
      "r872",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r884",
      "r909",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r952",
      "r959",
      "r1072",
      "r1119",
      "r1123",
      "r1124",
      "r1126",
      "r1127",
      "r1128",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1150",
      "r1151"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r257",
      "r258",
      "r259",
      "r288",
      "r629",
      "r692",
      "r778",
      "r792",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r806",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r825",
      "r827",
      "r828",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r849",
      "r960"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Balance Sheets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Comprehensive Income (Loss) [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r257",
      "r258",
      "r259",
      "r288",
      "r301",
      "r629",
      "r692",
      "r778",
      "r792",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r806",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r825",
      "r827",
      "r828",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r849",
      "r960"
     ]
    },
    "us-gaap_StockCompensationPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockCompensationPlanMember",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Payment Awards [Member]",
        "label": "Share-Based Payment Arrangement [Member]",
        "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares."
       }
      }
     },
     "auth_ref": [
      "r1029"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Shares issued under equity plans (in shares)",
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r95",
      "r96",
      "r139"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Exercised (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r95",
      "r96",
      "r139",
      "r485"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Shares issued under equity plans",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture",
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r95",
      "r96",
      "r139"
     ]
    },
    "plab_StockOptionsActivityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "StockOptionsActivityAbstract",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock options activity [Abstract]",
        "terseLabel": "Stock Options Activity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StockRepurchaseProgramAuthorizedAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock repurchased authorized amount",
        "documentation": "Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": [
      "r1070"
     ]
    },
    "plab_StockRepurchaseProgramCommencementDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "StockRepurchaseProgramCommencementDate",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date when authorized share repurchase program commenced, in CCYY-MM-DD format.",
        "label": "Stock Repurchase Program Commencement Date",
        "terseLabel": "Stock repurchase program - commencement date"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StockRepurchaseProgramExpirationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StockRepurchaseProgramExpirationDate",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock repurchase program - expiration and termination date",
        "label": "Share Repurchase Program, Expiration Date",
        "documentation": "Expiration date for purchase of share under share repurchase plan, in YYYY-MM-DD format. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": [
      "r1070"
     ]
    },
    "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amount remaining under authorization for purchase of additional shares",
        "label": "Share Repurchase Program, Remaining Authorized, Amount",
        "documentation": "Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ChangesInAccumulatedOtherComprehensiveLossIncomeByComponentDetails",
      "http://photronics.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total Photronics, Inc. shareholders' equity",
        "periodEndLabel": "Ending Balance",
        "periodStartLabel": "Beginning Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r96",
      "r100",
      "r101",
      "r130",
      "r808",
      "r824",
      "r850",
      "r851",
      "r938",
      "r967",
      "r1020",
      "r1054",
      "r1100",
      "r1154"
     ]
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total equity",
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "label": "Equity, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r58",
      "r69",
      "r213",
      "r214",
      "r239",
      "r257",
      "r258",
      "r259",
      "r261",
      "r266",
      "r268",
      "r335",
      "r336",
      "r371",
      "r426",
      "r557",
      "r558",
      "r567",
      "r568",
      "r569",
      "r571",
      "r572",
      "r573",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r588",
      "r618",
      "r620",
      "r624",
      "r627",
      "r649",
      "r771",
      "r772",
      "r789",
      "r808",
      "r824",
      "r850",
      "r851",
      "r865",
      "r966",
      "r1020",
      "r1054",
      "r1100",
      "r1154"
     ]
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedBalanceSheets",
      "http://photronics.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SummaryOfOperatingLossCarryforwardsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SummaryOfOperatingLossCarryforwardsTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Loss Carryforwards",
        "label": "Summary of Operating Loss Carryforwards [Table Text Block]",
        "documentation": "Tabular disclosure of pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization."
       }
      }
     },
     "auth_ref": [
      "r1085"
     ]
    },
    "us-gaap_SummaryOfTaxCreditCarryforwardsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SummaryOfTaxCreditCarryforwardsTextBlock",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Tax Credit Carryforwards",
        "label": "Summary of Tax Credit Carryforwards [Table Text Block]",
        "documentation": "Tabular disclosure of tax credit carryforwards available to reduce future taxable income, including amounts, expiration dates, limitations on use and the related deferred tax assets and valuation allowances."
       }
      }
     },
     "auth_ref": [
      "r1085"
     ]
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of non-cash information:"
       }
      }
     },
     "auth_ref": []
    },
    "country_TW": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "TW",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Taiwan [Member]",
        "label": "Taiwan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_TaxCreditCarryforwardAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "TaxCreditCarryforwardAbstract",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax Credit Carryforward [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TaxCreditCarryforwardAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxCreditCarryforwardAmount",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Tax credit carryforward amount",
        "label": "Tax Credit Carryforward, Amount",
        "documentation": "The amount of the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_TaxCreditCarryforwardAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxCreditCarryforwardAxis",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax Credit Carryforward [Axis]",
        "documentation": "Information by specific tax credit related to an unused tax credit."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_TaxCreditCarryforwardExpirationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxCreditCarryforwardExpirationDate",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Expiration period",
        "label": "Tax Credit Carryforward, Expiration Date",
        "documentation": "Expiration date of the tax credit carryforward, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "us-gaap_TaxCreditCarryforwardNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxCreditCarryforwardNameDomain",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tax Credit Carryforward, Name [Domain]",
        "documentation": "The name of the tax credit carryforward."
       }
      }
     },
     "auth_ref": [
      "r554"
     ]
    },
    "plab_Three55MillionFinanceLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "Three55MillionFinanceLeaseMember",
     "presentation": [
      "http://photronics.com/role/DebtFinanceLeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to the $35.5 million finance lease.",
        "label": "35.5 Million Finance Lease [Member]",
        "terseLabel": "$35.5 Million Finance Lease [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TimingOfTransferOfGoodOrServiceAxis",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Timing of Transfer of Good or Service [Axis]",
        "documentation": "Information by timing of transfer of good or service to customer."
       }
      }
     },
     "auth_ref": [
      "r913",
      "r1072"
     ]
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TimingOfTransferOfGoodOrServiceDomain",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Timing of Transfer of Good or Service [Domain]",
        "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time."
       }
      }
     },
     "auth_ref": [
      "r913",
      "r1072"
     ]
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Axis]",
        "documentation": "Information by title and position of individual or group within organization."
       }
      }
     },
     "auth_ref": [
      "r1036",
      "r1107"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://photronics.com/role/SharebasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Domain]",
        "documentation": "Title and position of individual or group within organization."
       }
      }
     },
     "auth_ref": []
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://photronics.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransferredAtPointInTimeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TransferredAtPointInTimeMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "At a Point in Time [Member]",
        "documentation": "Contract with customer in which good or service is transferred at point in time."
       }
      }
     },
     "auth_ref": [
      "r913"
     ]
    },
    "us-gaap_TransferredOverTimeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TransferredOverTimeMember",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Over Time [Member]",
        "documentation": "Contract with customer in which good or service is transferred over time."
       }
      }
     },
     "auth_ref": [
      "r913"
     ]
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instruments [Domain]",
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r422",
      "r425",
      "r587",
      "r610",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r673",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r752",
      "r926",
      "r927",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r939",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1092",
      "r1095",
      "r1096",
      "r1097",
      "r1098",
      "r1099"
     ]
    },
    "us-gaap_TreasuryStockAcquiredAverageCostPerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockAcquiredAverageCostPerShare",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Average price paid per share (in dollars per share)",
        "documentation": "Total cost of shares repurchased divided by the total number of shares repurchased."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury Stock [Member]",
        "label": "Treasury Stock, Common [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "us-gaap_TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockNumberOfSharesAndRestrictionDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "SHARE REPURCHASE PROGRAMS [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "plab_TreasuryStockPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "TreasuryStockPolicyTextBlock",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for treasury stock valuation, including method of recording repurchases (cost or par value method) and method for valuing subsequent resale.",
        "label": "Treasury Stock [Policy Text Block]",
        "terseLabel": "Treasury Stock"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TreasuryStockRetiredCostMethodAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockRetiredCostMethodAmount",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Retirement of treasury stock",
        "label": "Treasury Stock, Retired, Cost Method, Amount",
        "documentation": "Amount of decrease of par value, additional paid in capital (APIC) and retained earnings of common and preferred stock retired from treasury when treasury stock is accounted for under the cost method."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r46",
      "r96"
     ]
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockSharesAcquired",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity",
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchases of treasury stock (in shares)",
        "verboseLabel": "Number of additional shares repurchased (in shares)",
        "label": "Treasury Stock, Shares, Acquired",
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r96",
      "r139"
     ]
    },
    "us-gaap_TreasuryStockSharesRetired": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockSharesRetired",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity",
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Retirement of treasury stock (in shares)",
        "verboseLabel": "Number of shares repurchased (in shares)",
        "label": "Treasury Stock, Shares, Retired",
        "documentation": "Number of shares of common and preferred stock retired from treasury during the period."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r96",
      "r139"
     ]
    },
    "us-gaap_TreasuryStockTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockTextBlock",
     "presentation": [
      "http://photronics.com/role/ShareRepurchasePrograms"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SHARE REPURCHASE PROGRAMS",
        "label": "Treasury Stock [Text Block]",
        "documentation": "The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r140"
     ]
    },
    "us-gaap_TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockTransactionsExcludingValueOfSharesReissuedAbstract",
     "presentation": [
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfEquity",
      "http://photronics.com/role/ShareRepurchaseProgramsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of treasury stock",
        "terseLabel": "Cost of shares repurchased",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r47",
      "r139"
     ]
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "US",
     "presentation": [
      "http://photronics.com/role/RevenueDisaggregationOfRevenueDetails",
      "http://photronics.com/role/RisksAndConcentrationsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesBusinessDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "United States [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_USTreasuryAndGovernmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "USTreasuryAndGovernmentMember",
     "presentation": [
      "http://photronics.com/role/FairValueMeasurementsDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "U.S. Government Securities [Member]",
        "documentation": "This category includes investments in debt securities issued by the United States Department of the Treasury, US Government Agencies and US Government-sponsored Enterprises. Such securities may include treasury bills (short-term maturities - one year or less), treasury notes (intermediate term maturities - two to ten years), and treasury bonds (long-term maturities - ten to thirty years), debt securities issued by the Government National Mortgage Association (Ginnie Mae) and debt securities issued by the Federal National Mortgage Association (Fannie Mae) or the Federal Home Loan Mortgage Corporation (Freddie Mac)."
       }
      }
     },
     "auth_ref": [
      "r731",
      "r915",
      "r939",
      "r955",
      "r1149"
     ]
    },
    "us-gaap_UnbilledReceivablesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnbilledReceivablesCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/AccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unbilled Receivable",
        "label": "Unbilled Receivables, Current",
        "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "plab_UnrecognizedTaxBenefitNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "UnrecognizedTaxBenefitNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/OtherLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrecognized tax benefit classified as other.",
        "label": "Unrecognized tax benefit, Noncurrent",
        "terseLabel": "Unrecognized tax benefit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefits",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance at beginning of year before interest and penalties",
        "periodEndLabel": "Balance at end of year before interest and penalties",
        "label": "Unrecognized Tax Benefits",
        "documentation": "Amount of unrecognized tax benefits."
       }
      }
     },
     "auth_ref": [
      "r520",
      "r540",
      "r922"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reductions of tax positions in prior years",
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r922"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Settlements",
        "label": "Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities",
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities."
       }
      }
     },
     "auth_ref": [
      "r543",
      "r922"
     ]
    },
    "plab_UnrecognizedTaxBenefitsIncludingInterestAndPenalties": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "UnrecognizedTaxBenefitsIncludingInterestAndPenalties",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The gross amount of unrecognized tax benefits, plus accrued penalties and interest, pertaining to uncertain tax positions taken in tax returns as of the balance sheet date.",
        "label": "Unrecognized Tax Benefits including interest and penalties",
        "terseLabel": "Balance at end of year including interest and penalties"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest and penalties",
        "terseLabel": "Accrued interest and penalties related to uncertain tax positions",
        "documentation": "Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return."
       }
      }
     },
     "auth_ref": [
      "r538",
      "r922"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additions based on current year tax positions",
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return."
       }
      }
     },
     "auth_ref": [
      "r542",
      "r922"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Additions of tax positions in prior years",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions",
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns."
       }
      }
     },
     "auth_ref": [
      "r541",
      "r922"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Lapses of statutes of limitations",
        "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations",
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations."
       }
      }
     },
     "auth_ref": [
      "r544"
     ]
    },
    "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesUnrecognizedTaxBenefitsAndCarryforwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized tax benefits that, if recognized, would impact the effective tax rate",
        "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate",
        "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate."
       }
      }
     },
     "auth_ref": [
      "r545",
      "r922"
     ]
    },
    "us-gaap_UnremittedEarningsInForeignInvestmentPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UnremittedEarningsInForeignInvestmentPolicy",
     "presentation": [
      "http://photronics.com/role/IncomeTaxesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unremitted Earnings in Foreign Investment",
        "documentation": "Disclosure of accounting policy for tax treatment of unremitted earnings in a foreign investment."
       }
      }
     },
     "auth_ref": [
      "r1090"
     ]
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimates and Assumptions",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r40",
      "r41",
      "r172",
      "r173",
      "r175",
      "r176"
     ]
    },
    "us-gaap_ValueAddedTaxReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ValueAddedTaxReceivableCurrent",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/OtherCurrentAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recoverable value added taxes",
        "label": "Value Added Tax Receivable, Current",
        "documentation": "Carrying amount as of the balance sheet date of value added taxes due either from customers arising from sales on credit terms, or as previously overpaid to tax authorities. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1006"
     ]
    },
    "plab_VariableInterestEntityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "VariableInterestEntityAbstract",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Interest Entity [Abstract]",
        "terseLabel": "Variable Interest Entities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss",
     "crdr": "credit",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income from PDMCX",
        "label": "Variable Interest Entity, Measure of Activity, Operating Income or Loss",
        "documentation": "The amount of income (loss) from operations derived by the reporting entity during the period from the Variable Interest Entity (VIE)."
       }
      }
     },
     "auth_ref": [
      "r148"
     ]
    },
    "plab_VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "VariableInterestEntityConsolidatedCarryingAmountAssetsLiabilitiesAbstract",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Interest Entity, Consolidated, Carrying Amount, Assets, Liabilities [Abstract]",
        "terseLabel": "Carrying amounts of assets and liabilities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableInterestEntityDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityDisclosureTextBlock",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVenture"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "PDMCX JOINT VENTURE",
        "label": "Variable Interest Entity Disclosure [Text Block]",
        "documentation": "The entire disclosure for a variable interest entity (VIE), including but not limited to, judgments and assumptions in determining whether to consolidate and in identifying the primary beneficiary, gain (loss) recognized on the initial consolidation of the VIE, terms of arrangements, amounts and classification of the VIE's assets and liabilities, and the entity's maximum exposure to loss."
       }
      }
     },
     "auth_ref": [
      "r144"
     ]
    },
    "us-gaap_VariableInterestEntityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityLineItems",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Interest Entity [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r575",
      "r576",
      "r579",
      "r580",
      "r670",
      "r671",
      "r672"
     ]
    },
    "us-gaap_VariableInterestEntityMeasureOfActivityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityMeasureOfActivityAbstract",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss) from Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableInterestEntityNotPrimaryBeneficiaryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityNotPrimaryBeneficiaryMember",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "DNP [Member]",
        "documentation": "Variable Interest Entities (VIE) in which the entity does not have a controlling financial interest (as defined) and of which it is therefore not the primary beneficiary. VIEs of which the entity is not the primary beneficiary because it does not have the power to direct the activities of the VIE that most significantly impact the VIE's economic performance and for which it does not have the obligation to absorb losses of the VIE that could potentially be significant to the VIE or the right to receive benefits from the VIE that could potentially be significant to the VIE are not included in the consolidated financial statements of the entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableInterestEntityOwnershipPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityOwnershipPercentage",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureVieDetails",
      "http://photronics.com/role/SummaryOfSignificantAccountingPoliciesVariableInterestEntitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership percentage",
        "documentation": "Percentage of the Variable Interest Entity's (VIE) voting interest owned by (or beneficial interest in) the reporting entity (directly or indirectly)."
       }
      }
     },
     "auth_ref": [
      "r66"
     ]
    },
    "us-gaap_VariableInterestEntityPrimaryBeneficiaryMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableInterestEntityPrimaryBeneficiaryMember",
     "presentation": [
      "http://photronics.com/role/PdmcxJointVentureCarryingAmountsOfAssetsAndLiabilitiesDetails",
      "http://photronics.com/role/PdmcxJointVentureVieDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Photronics Interest [Member]",
        "terseLabel": "Photronics Interest [Member]",
        "label": "Variable Interest Entity, Primary Beneficiary [Member]",
        "documentation": "Variable Interest Entities (VIE) in which the entity has a controlling financial interest (as defined) and of which it is therefore the primary beneficiary. A controlling financial interest is determined based on both: (a) the entity's power to direct activities of the VIE that most significantly impact the VIE's economic performance and (b) the entity's obligation to absorb losses of the VIE that could potentially be significant to the VIE or the right to receive benefits from the VIE that could potentially be significant to the VIE. VIEs of which the entity is the primary beneficiary are included in the consolidated financial statements of the entity."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r575",
      "r576",
      "r579",
      "r580"
     ]
    },
    "us-gaap_VariableLeaseCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableLeaseCost",
     "crdr": "debit",
     "presentation": [
      "http://photronics.com/role/LeasesLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable lease costs",
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases."
       }
      }
     },
     "auth_ref": [
      "r641",
      "r937"
     ]
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Potentially dilutive common shares (in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment",
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation."
       }
      }
     },
     "auth_ref": [
      "r1028"
     ]
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract",
     "presentation": [
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effect of Dilutive Securities [Abstract]",
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted (in shares)",
        "totalLabel": "Weighted-average common shares-Diluted (in shares)",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r273",
      "r281"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average number of common shares outstanding:",
        "terseLabel": "Weighted-average common shares outstanding [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://photronics.com/role/ConsolidatedStatementsOfIncome",
      "http://photronics.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r272",
      "r281"
     ]
    },
    "plab_WorkingCapitalLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://photronics.com/20241031",
     "localname": "WorkingCapitalLoanMember",
     "presentation": [
      "http://photronics.com/role/DebtXiamenWorkingCapitalLoansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Written promise to pay a note which can be exchanged for a specified quantity of securities (typically common stock), at the option of the issuer or the holder.",
        "label": "Working Capital Loan [Member]",
        "terseLabel": "Xiamen Working Capital Loans [Member]"
       }
      }
     },
     "auth_ref": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482338/360-10-05-4"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-12"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "30",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479910/205-30-50-1"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(2)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-16"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-21"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-8"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-3"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Paragraph": "2AA",
   "Subparagraph": "(a)",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-2AA"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-15"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-16"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-21"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-4"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-4"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-5A"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-5A"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-5A"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-6"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-9"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4I"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "182",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-182"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-20"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "850",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "850",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-3"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r87": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r109": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r110": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r111": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r112": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r114": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r115": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r116": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r117": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r118": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r119": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r120": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r121": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r123": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r126": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r127": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/275/tableOfContent"
  },
  "r128": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r129": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480581/330-10-S99-2"
  },
  "r132": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/360/tableOfContent"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r134": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480091/360-10-S99-2"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6"
  },
  "r138": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7"
  },
  "r139": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r140": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505-30/tableOfContent"
  },
  "r141": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r142": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r143": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r144": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/810/tableOfContent"
  },
  "r145": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r146": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-23"
  },
  "r147": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r148": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-6"
  },
  "r149": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r150": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r151": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r152": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r153": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r154": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r155": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r156": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r157": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r158": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r159": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r160": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r161": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r162": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r163": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r164": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479024/942-230-45-1"
  },
  "r165": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r166": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r167": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r168": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r169": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482989/270-10-45-6"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-7"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "04",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column C",
   "Footnote": "5",
   "Publisher": "SEC"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column C",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(a)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(b)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column C",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column F",
   "Footnote": "7",
   "Publisher": "SEC"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column A",
   "Publisher": "SEC"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column E",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column G",
   "Publisher": "SEC"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column H",
   "Publisher": "SEC"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column I",
   "Publisher": "SEC"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column A",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "L",
   "Publisher": "SEC"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 4",
   "Publisher": "SEC"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-1"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-2"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(e)(3)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479391/326-20-30-4A"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479391/326-20-30-5A"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479366/326-20-35-8A"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-5"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-17"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-21"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3C"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3D"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.M.2.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483530/326-20-S99-1"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479175/326-30-30-1B"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "13A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479148/326-30-35-13A"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479148/326-30-35-7A"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479130/326-30-45-1"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3A"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3C"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3D"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-1"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-4"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479483/340-40-50-3"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-17"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-18"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-18"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-19"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/715/tableOfContent"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(o)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(p)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(q)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(r)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(r)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480126/715-20-S99-2"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480266/715-60-50-3"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "70",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480794/715-70-50-1"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.C.Q3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.1.Q5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.3.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483384/720-30-45-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483044/730-10-05-1"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-10B"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-25"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-28"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10A"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(8)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-19"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-20"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-3"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.1.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-11"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/830/tableOfContent"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-17"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-1"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481956/830-20-45-1"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481926/830-20-50-1"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/842-20/tableOfContent"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-2"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-1"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/850/tableOfContent"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-6"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481435/852-10-45-14"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(4)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478411/912-330-50-1"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "280",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "940",
   "SubTopic": "820",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(f)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(f)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(f)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-2"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-5"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-6"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r792": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r793": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r794": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2"
  },
  "r795": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r796": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r827": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r828": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c)(2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c)(2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r831": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r833": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r834": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r835": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r836": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r837": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r838": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r839": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r840": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r841": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r842": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r843": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r844": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r845": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r846": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r847": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r848": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r849": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r850": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r851": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r852": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r853": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r854": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r855": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r856": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "12",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-12"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19"
  },
  "r858": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r859": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r860": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r861": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r862": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r863": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r864": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r865": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-3"
  },
  "r866": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r867": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2"
  },
  "r868": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r869": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r870": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r871": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r872": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r873": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r874": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r875": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r876": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r877": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r878": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r879": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1"
  },
  "r880": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1"
  },
  "r881": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r882": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r883": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r884": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r885": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r886": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r887": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r888": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r889": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r890": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r891": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r892": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r893": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r894": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r895": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r896": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r897": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r898": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r899": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A"
  },
  "r900": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8"
  },
  "r901": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r902": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r903": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B"
  },
  "r904": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C"
  },
  "r905": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E"
  },
  "r906": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F"
  },
  "r907": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r908": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r909": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r910": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r911": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r912": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r913": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r914": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r915": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r916": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r917": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17"
  },
  "r918": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8"
  },
  "r919": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r920": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r921": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r922": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "217",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-217"
  },
  "r923": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r924": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J"
  },
  "r925": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r926": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r927": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "101",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101"
  },
  "r928": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "102",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102"
  },
  "r929": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r930": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r931": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r932": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r933": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r934": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r935": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r936": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r937": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53"
  },
  "r938": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10"
  },
  "r939": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4"
  },
  "r940": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17"
  },
  "r941": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21"
  },
  "r942": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29"
  },
  "r943": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3"
  },
  "r944": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2"
  },
  "r945": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4"
  },
  "r946": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5"
  },
  "r947": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6"
  },
  "r948": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2"
  },
  "r949": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r950": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F"
  },
  "r951": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r952": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r953": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r954": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E"
  },
  "r955": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-17"
  },
  "r956": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18"
  },
  "r957": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r958": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r959": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r960": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r961": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r962": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r963": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r964": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r965": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r966": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11"
  },
  "r967": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r968": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r969": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r970": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r971": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r972": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r973": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r974": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r975": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w"
  },
  "r976": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r977": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r978": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r979": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r980": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r981": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4"
  },
  "r983": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r984": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "SubTopic": "825",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r985": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r987": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r988": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r989": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r990": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r991": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r992": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r993": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r994": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r995": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "04",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r996": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "04",
   "Subparagraph": "(a)",
   "Publisher": "SEC"
  },
  "r997": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column A",
   "Subparagraph": "(ii)",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r998": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r999": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(b)",
   "Footnote": "1",
   "Publisher": "SEC"
  },
  "r1000": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r1001": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(i)",
   "Publisher": "SEC"
  },
  "r1002": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(iv)",
   "Publisher": "SEC"
  },
  "r1003": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(iv)",
   "Publisher": "SEC"
  },
  "r1004": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r1005": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1006": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1007": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1008": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1009": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1010": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r1011": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r1012": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r1013": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r1014": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r1015": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r1016": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r1017": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r1018": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r1019": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1020": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1021": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1022": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r1023": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r1024": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r1025": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r1026": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r1027": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r1028": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r1029": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r1030": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r1031": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r1032": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r1033": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r1034": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r1035": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/310-10/tableOfContent"
  },
  "r1036": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r1037": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r1038": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-1"
  },
  "r1039": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1040": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1041": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1042": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1043": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1044": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r1045": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r1046": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r1047": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r1048": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r1049": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r1050": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9"
  },
  "r1051": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1052": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1053": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1054": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r1055": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405/tableOfContent"
  },
  "r1056": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r1057": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1058": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1059": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1060": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10"
  },
  "r1061": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r1062": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r1063": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r1064": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r1065": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r1066": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r1067": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r1068": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r1069": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r1070": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r1071": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r1072": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r1073": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r1074": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "712",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481179/712-10-25-4"
  },
  "r1075": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "712",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481179/712-10-25-5"
  },
  "r1076": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r1077": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r1078": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r1079": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "720",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483384/720-30-45-1"
  },
  "r1080": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r1081": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r1082": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r1083": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r1084": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r1085": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-3"
  },
  "r1086": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-6"
  },
  "r1087": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r1088": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r1089": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r1090": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2"
  },
  "r1091": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r1092": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r1093": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1094": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1095": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1096": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1097": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1098": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r1099": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r1100": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r1101": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r1102": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r1103": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r1104": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r1105": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r1106": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r1107": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2"
  },
  "r1108": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r1109": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r1110": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r1111": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r1112": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r1113": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r1114": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r1115": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r1116": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "912",
   "SubTopic": "730",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1"
  },
  "r1117": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r1118": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r1119": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B"
  },
  "r1120": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r1121": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r1122": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r1123": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r1124": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r1125": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r1126": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r1127": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r1128": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1129": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1130": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1131": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1132": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1133": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1134": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1135": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1136": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1137": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1138": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1139": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1140": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1141": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1142": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1143": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1144": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1145": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1146": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1147": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1148": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1149": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-1"
  },
  "r1150": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1151": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1152": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r1153": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r1154": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1155": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1156": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r1157": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r1158": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r1159": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>119
<FILENAME>0001140361-24-049881-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001140361-24-049881-xbrl.zip
M4$L#!!0    ( 'JLDEFD>@ER'&<# (1A+@ 2    968R,# S-38P.%\Q,&LN
M:'1M[+UI5^-(MBCZO7^%+GWZ=N9Z0&H>LJKR+J<Q69S*!!J35:??6V_5"DDA
M6YVRY)9DP/WK[]X1&FT9#-@@&]4Y785M#;'G,7;\_'_N)H%P0^/$C\)?_BX=
MBW\7:.A$KA^.?OE[;]@_._O[__GTEY_'*5P&EX;)QSL[#OQ?#L9I.OWXX</M
M[>TQ?G,<Q:,/LB@J'_PP24GHT(/L^L /?]QS.?YLDZ2X_&[I^EN%72U9EO6!
M_5I<FOA-%\)CI0__\^WKT!G3"3E:7 ^^WBUOK*Y&_\!_S"_UDTB5)>,^8/D5
M^0U)G!87>R2QV87P)5PLJ\53[U8]4$+L 83T?SY??2TO3YNO+R_]D,8D3+PH
MGI 4Z(AO$X]$^4B2*P\Y2JA3>Q!\/AY%-_<^1]*.1/-(D?+GS)*C$2'392"S
M'VJ NG0!S?D;X8?:A4XT"]-XWGQQ]F/]AED< YNNNB/[M;Z8-#Y*YU.:-",3
M?OZ /^,]\I&H5&%.XY4<8'V 7_,+0^([2?.2V$^U]22^TWPI_%"_,)W&*ZZ$
M7VJ7TCMGW'PI_E+'(/56((]Z]6<Z[HI'.F[]B?,5%\(/M0NG ;&+*Z?C*(VC
M$+!S[$03=ITD%KA?K0=0(1U\^HL@_#RFQ,4_X,_43P/ZZ></_+_\N_]U="1\
M]1T:)M05TNBC\#F.B!O[[H@*IWX(FL$G@3",@AFR?'(H?/W:9W>R?TXB9S:A
M82HX,24I/&&6@&:L/N/RZL+S RK(ZK$D'TO'FFRHY?W]:#J/_=$X%6#9FG D
M((#5VX^.LG5.:$H$A/:(_GOFW_QRT(_"%-Y\= U<>2 X_-,O!RF]2S\PZ#^
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
MXBBL9!KO@^7@4WY9,U _?VA\3X'-8CF/$W!ILP+>#O[=*GP/L"06$."V. K
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
M# @>S6+A$A3<7!CFWEC>PE+D*( ?-8'/0ZRC8BN0/7.GW.-0\8U2%LD!)I@
MCX%AT"$L?#S\I^AC8LD'%!$,%JM]2QCW%FY098)2-<R)R]X,2>UED>H]_4]Y
MYQ-KZ02]P](CJ'G+F0=<]4(0 Q()OC%&RY%P"992.#L[*]H],LI=%5'Z*6!
MP/&EQ[F+L4YF8K\(+RR!_BJ[/)\W WIIS'.UE7]I0'2[9D [ 24QJ\^.BUOY
MNAEVLF^*:=?,4.=C#C]?79Y>DA']'%/R [=VEYBKO&$*5QS9> GX=+#HCR2X
M)?-DQ6,J"? *^ODR.*89VIJZ';+OQ!+%<A7#?,-$(X;SGZK(6,19]>__=71T
M>76!R@C7S;>17]&$IG^#O_\F_^UO?SLZJL;Q?ZECY-$\NI+W\Y57IJ8W,>]J
MB!<X>4)=?S:I<SGGK:9?,A9K^HFQ4.V'Q15_J/)*A>CK;/U<$-=RE-DA>A8U
M1^BISZP/Q[TX%]A\:SYL^OE/O^A?7WP>7%6FM"X_<Z&VL8G7_DR8,WS=^_QU
M<'':OSB_1F\,O@>&[H7..(J!;W_^0.I6ACW=Q3DIS&Q^Y#83#PK #:KX+)P@
MF3^MP7#5(5KZ9=?'L.$_BW6_I=K]RFJ@):V:3B3$T2WB\I<#:45KU%+%<?5;
M5FU;J\+*Y'GQO6MS JK"@O@-I=#%#H>=PM-37K)%F%<%,R*XJ;)B9I[?4C$Y
M%T,BC&,,9__Z)8B2A,3SR+NF\20!_[GGQ%$XGQQ\RG]"_Y7]R+SK[.>$*8G&
MCID-\.1S@&M2B1E??U+67/$VF77%Z+*GH*D)Q%5/WP%>[(.K"DH%6*X(@:_H
MB,3NP:?RITIXS'_$J!$"J5OX\^AK%/U@PQ**@L9.LNGR(.;F%7=L^F)L6G,Y
M%IVJ]2UD#US)LX^K1G@T4WD3"%\7]E<@2\=I=4ZK*,3/WX=GYX,A^.=GUP.(
M/8Z%_)NMJK7GLH_6\4\[^.?J;/C;:0\BS:N"A7K' GXK9%_OI'F4I,X^MICK
MOI]?#8877W\?G RO>Z>G.%6')QDX!WX^%LHK!':)D%_3:K4FBQV'M8/#^O_\
M/+C*SC+Y9\Y7_6.A]GW'2QTOK<%+EU<7EX,K/!(G8R3Y6"B_>WW[V(AO6>[8
MIQWL\W7PI?<5^*4_&)R<G7_)F4@Y%M@O0N6GCI<Z7KJ7E[YA:-<['5S_\^1L
MV/]Z,?Q^56@E]5C GP7^NU"YH*5VKF.KO<E7=0FKCM76U&"]J]\&UZ<75U>#
M+V=#/*;P>LBFJF9:3 ,MQB[!8KI07I3U-PX%/H)5&/SC.WCPAW#%UQX_,ORB
M_]NO%U]/!E?P@.MK\/+9>=UGP^%W^.KR^U7_U]YP,,0R-+^W<M1A6Q6D\L)<
MNX)X#95,H6D'Y;;PM=,,#_9W</7[X"3C;_U8^/_RK_[_MOI[:J<MV\$\WWKG
MO2\#EOA"?^[[<'AV<0YJK9=QDX':,K^D4)'EI4P%P@5?_SD\8ZKO] QN[Y]!
MV-&_.#_A!\3B-<"2W[]>LTLPL.WA#ZU5BUWUH"7L^0\\4/CL&KCE]P%P$7S\
MRC_E[-D[%JK7,%8KKQI4@Q2A]_GB^W5N_+$"T5+MJ.@=^[6#_0IE-@1VXEH2
M&&SX_3)C/_.XHN_*:Q@7PE677]GGWA4$R[WK7DNUG6)T[-8.=N.GH0^1HTY
M<?6^7 T&U;J5=2QDEPAGW*K6KA+^.+O^5>CU^Q??@>GP"[2]_./9^1=V0\FN
MI69LJ1HTNNQ-6_CRXOSZZN(KZCZ62SZI) 4ML,#Y[XS#RBLZONKXZEZ^NKC^
M=7!U=HZ;&E@\D+/4YV.!_214?FLK,W61;$N8J;1G5X,OO2LL=P'S#,Z^Y%S5
M/Z[8/*&X2.!7G0O__1UB@I.S/HM,A>M?>]>@RP:_@V4%/AQ>#OK;#UD[/MQ1
M/MQHJ:.K=72\MJ[.NQJP'LK!_PSZWS'A<7%Z>M8?7.4-22+JO.R:0Z&X2L@N
MXQY;,05!^'+Q^^ * X36Q@2=FFL)ZQ6\U+_X=CDX'U8=.$DZKO!:]8*6ID X
M'3KF:@MSY?V3%W^<@Y+Z]>SRXA2TU77O+&<P^3@OKOY3*"YB&X#99>?"Y\'Y
M %0<)CKX[TS3E:6,K":QLK3;4D8UNLI$2U@T8S3&0A@7 /]A?N1JD+.H<EPP
M8^VB&N=AY\&PQR.+PRRCQ\TUQ!PG ]";)X-66.,G;)% 7NVV2&P<I,TU'9^=
M]\\N>U_+A/'I8  \G#.PBDW(V365K+* 5_$*Q^#J=_ BVZHK,Z/>:<Q]"8Q_
M[^+BCM76#$Y^/?M\QHJU]1)NKMLT#%#X-0MEL:***PS[OPY.OG]M0QWC*=97
M[ZQOBSD4ZQHXQVGX_=NWWE6Q@4P_+D<\"=EOK\]^C<@WU]L^5OQ9/]5"6!@E
MM3QF<^GGU0/?<F"?,D:N7.L#LZR6)L7QB6M\XMSR4-#U1D*9T^4Q:LVC$AN&
M'!Y\DN^9<]4\V"Y?X](\/"$?B%<EWM+LP6*\'9MIMXSN5</QGC@+[Z!A4%>%
M2M57+)'G5TI@P75P5CDDFYI':2Z.H_138"+GD>,H2RVQ-"/MFDTIBSRACS."
MZ[-E2A3516=9SM9E^?O&M]TSM&EID-M#4YR>-';NTTEQJB<;7NN >B-XHD/Q
M I*]@ ^;GI YSN\&EN7G/OCYS&HV1[4X#<:F073;.+SOH36][0ERLK;*Q+S8
M,..M!2J];Q=?!R?/M<'&CF/H4X^=R',T(6GLWPE1/"*A[P@!+ON(XI'4./;*
M]2.7'@L]6( S#N$=HSD>[,2.BYA$-IYG[=(;WZ')\8LYJ"W@S:=PW70:X&D=
MH.".DBEU? ^P?=;? S9<R6 A.^-IQ*=9.W[LS/Q4<&8)^&N@__CQ7T28$ES\
M+ !-#IQU*,#E_/02PN]GP['QTA$-:0Q 3F?Q%,^>@:O?$L]M3Q\.]X$+GZL,
MBY._AL69<OW(12EE,ON6..U)/'2Y!SRTDCM@61"#X+DG[&RQ2SQ Y2UQQ!9U
MS_<]X)LMZ)[O4SQ.YRWQV!.XI\\KL$ZZ!SRTBCN6OET=Y_.H\/%G)+$C3S@N
M,= >.CX[<B0[J$06<?!&XU+>$GMN306>G.^#Z7R>"CPAOG#N3_&@,K"M7!?V
MH^-#X6OJ=H'E_?PS^/[['O#/2N,HW!(/PL' 3\<1A)+3\;R>B\@/]_1#%R++
M>"[D9T+CP=,QG4"<&,#+;OPHH*GP#K#U'AYY0P,:CM+QL0!?"--Q!#$I27XD
M@C<+^7EP-CR)'7/GW^#I@-EQLNQ J5BP@\AA8\%9N@1/L^7G%^/AB&F$?]_@
M<:912(+JP_E1BBM>T:#H&9+R5,S2:]^27&Q-^U:/Y=H#,7J>&KY^^,@R=F9L
M=F39^[?$@4_@K=/>\/,>\-0J;CDM3LINC& ^1_"?M\0A6]-1Q:%^>\!,SPR5
M5YYW^)88[1DL](\]8*%5S/$/?I T.&O+_+$NW'O!']M31)<GR1XPT/-TT&E
MTJ,I"6D@N'XR#<@\.43G',=IR>)/^7?LH_336^*[)W#4%U;3>T2!I<U\M8IC
MSL+*0;X0'GK 0<(B![$K\'1B?L:]_Q\JQ,SYSH[NY@W4<_2QDIF-AWBG[&$\
MIB1EF"GX[&3[P*?NL? K0$WSTBD+.M^5K/HEX]'W0LB:WU@+34P3/ DK(/$(
M#X3/7[6NW.\%(V]-@2(YCB!V$MZ568%UHZ@V<_XS-2JPY%G_L)HI83U>V,DE
MF^$$M6L"+P]X$ULL@!TZ%'@;SZ'P11*/M?_GD*6NOUY?#BN/>4L\^P1N/.OO
M@S5?K747>T^XG4[HQ'>BT)TY:12_*1;9FEI#L=L#3GJ>%OL:W1Y=T\D4#>T,
M--=E!)'(T ^0V0[10,-G)YXG*<$F C3Q["<AF8=@WQ/6$05*+Z;@'?"<<Q#=
MPD*+)R8_K7P&;X$-CSP_F/"LL9\@=POOKD^OD_=,D^9M>X'_[YD/ /+'Y!Z(
M\.YK_^1]Q37A3;?@8+@QK";O#VQ(4C=U# KO4#>_+]R;MR1E3Y"?BRE;+[8M
MW_F R#DL+(ZILS6_>.*[;D!?'RF?>MQ:5ZL[-!P3<)39>:RLT@/\2G./EE=7
M0"3"!/U?= ;0.0X0:Z1H'F<LB9=.B!_R-G*XB+K@30,[9L_FO8F(;+B#A,#A
M_LC'@HT+PC@"D?4G9 1O!" C$-]<U%@YZI"]V9O%K%41R.;0A%>B(GP439TQ
MW#DE:4KC\$T5,+=F8RY/OO7_Y\T;F?_QL?8B]"8T!A!"X;\)[E2Z!!F*(U#/
MB? -(\"B=(YVYU\1<+J ]4BT2L#KE:M1Q:_??[ 7#/H$UKOZML]EG#XX#A#S
M@^,13OS0]M\2,VQ-6UU=?,=*:4+3+K[_=,4\Q,@[ A=48$AY2SSV!.X9#O:A
M(W\5.U0Z#-#^%%T&_6@R\<&->EO-]EM3014T=[TM2[TM94N+\E(M+7%TB]N[
M?SF0#MK'AH^82?&T-F.AD4<O^D=2MG'W\1RZ&J$MX-:M(Q0E/,:ME\(%R\W\
MA]=W<"MY' 7"(]':Z=+[="GKD/_2ZW6=VI56KVGLAXX_#8!/LZV9P5P@CD.G
M*<\T8M+E>^CCIV&*-434N%GH^I;8\@D,]P=FF?: V1YHZ^8%F7IF#<O7+)LM
M) %J-^"96LE&F  KQ=AVB$7"PYS1/&+'V5Y-O 5NB"/67,U3'8?PD/@&7<Z$
M%]B+&CIF\A:NSO>T"_;,#S!3R!S5&6Y/P'MO'T&<!@8N_ER<H2.L/2RC%P1E
M2P%K&LA*^K(HJUE5_[#RG5)\AX"4W\O9]ZQ  $^)9K'@^0GFHN>4Q(G =U\#
MW!> >IO&@B+QA@3<@,TN.11F(:@ D&W,A=[Z\'V"PNXV3]T0'H;N.?-_5D\5
MJE)@!V<#*2MF ]6!63T'J'E^4)U7*_.![I__TS ]J&DD4%V3-)N=\O<JN1LF
M!=4!?>RLH'LT[L/J;Y>F!36(U#TBUL3\#1R^N.V2S-C>EGC.[3HKIUS1$8EQ
M+D[&J-DT-SY>J+RCN(%?WS!>Z,'7GT;Q+=QZ]#6*?F0MY_R1R3WSL];0JC6D
M^*#XD%R261\K5D238*:*YF.V^8?X88+&A*TMR-:6%&L[1,OCXI C'$LT9X9D
M..@?"QB87L;^#=JB2H#Z%?XSXN;LBB*+E"&KI>4#CM!49MH\ :,DC$D,LIDK
M=5:C6KD@4* NQ97,>%\$VDU0_S8=D\ [%DY7WE@3*S0<E6=&Y>R.ZK>>,&8%
M:5;E](C#S+83S)!?#D&W@#V9I94JWF%F82K/8!U!_":TWLY8N(UPFP%@-<,
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
ME^]T]VC+;Q_%V(M)!XK9B[;/V=V=A/H@;'*X1$$ONO)8YK0%_#O H=-Z \3
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
M $->/YH]YX_IU9]5;7Q7RZ4_A]@A'Z=HA2)<@X.Y>"J9S;TQH'\K LV87>[
M(*9%IMWFHL3>T*Z+'\M\ZTQH2C].K>K@$VA!*7]A8&%P\^V;V&;@H-5]\X*0
MRP/^)R]5CS4&T^"L@LQ!Y-G,G:=H'BG?F;F:>[;&''&QTQ1:3V[4='Y!;\Y=
M<F"[="B69!IQ#:;Q,.L2H1FF$#BRPF6K0 -1#RTBP+#$=K'JWXY^U4\O\2("
M4&6L,0+<KHZ'#5[U3\M^]66FY &*S ?9[2R<$]I&U,!6]XU3BC@1MJK/<_-
M_L^$D6C-;G&:57$E*Z>YI+OJCVZ (F:P.CR&#,IT);E/%S/=L%NS+DQ1,C!I
M*H^?P@)VDZ_5Z<0%)B=DLMX?I+<)J#9,H@<O+7D_X.$R?<3"-_1;1QDIQNT$
M<_O8&MY>'@^9*@GIL(@$I6K!/8)!$S[B)E@AT[ACNBB*5Y5@F"EL83"X^CI\
M>S'47].2TFG5S&GW7#,\/.J[,QV&F"ZG%5A$H/)'1:CU;'UQ+G*+2SIN)*Q
MV9^-8"6:)>Z?!ZD^^GM748-[3^3F!@AH<PUVCT&!@("%* F@-"_QU4 VO .U
M0]*:E.$+,)XEO$ZE1B*R&2)/:GH>>PU1M=IR<BZZZ3"%@I^=%21!]OQ*T?43
M%P(D?KIV(<N%H+L*0ZY+QU((^'Z2$V7X:@NWSEW@=[F%6XZ$C HS[T)G7PK)
M!)@5$ +LH0LSG2P==Q/N3=0?BL>E]L&\;AD3E/]#'ZZB:SL44]>JVLWLD;.Y
M$GJJ?W')!(J?)*&5(A@(Y@TWL4',,@UNI(FK/^WG:N2H,?.$<0#2(7J=P6L]
MHDP+<V'ZG:W4RXTQRY)[>N10;_L0+L!AC"G*.Z7TIY1X=6<%.=7M+#1W7H!Q
M"B_/06(!T< 6)D^UP'EC)+J'!],PU[E V0QXB?4GA/!B(3YH?VU\"3/SG TR
M&!(FL?/,UN"O,],:7&F>5K4O% BN<$WX9_"6>CAM\=226!LJ"L3H!QPO]K\Y
MH"0S)P<C6-"M96U65]PE]L1VU\($#5=HI7%+AAW(L,,!\*W&PYL&P>B!FFII
M7U&K'=OB(+8"$ACZ3)O4,A<>NA2-0\-\3.',#%Z+A7 *<3RG&KF,":JE3MQA
MA,>T48==[;U@=P-.]MPE,:/7B.N]\^'X\!S_M?OA#82],#:D'RY)<>4&6VI-
M.%1D6)NH+1XSB4U(I#XX?(<Q"_92!*,:)HAM-,:XGK2OZ<  L@T^L4,A:NHW
MU*/E.>N5Z"=7#.WCY+(2_\+4E4U;7;@ELU]'.>3SJ&7"V&P5$-7<N#OHK3K7
M443<3)(3>SY*+C68YC US:<4(D5R6*^L?I!=:;FS?@+%X= D-4DX"QB0*RJM
MH>8A0G'BJGOQ)@[Y%EPXE&J[CG%1S5$U0^)KE"\NO3:NP-3O6N1&UJGZ%\S$
M;K/0V!N2\K-0,= QOB<C7HNDMM=&(Y\)L4W]32K@DR4:E!9OB<2ORY /M4E-
M>%>$*TX[4S=:;EE 6*.9B#^UR^G<DFKHF/27'0,59UJ>9J/HY<IK0S>!A9?!
M<%GUQ!68V#"&R7G*RU843N6GJO*9_O/L'.=S,J<_S%9N:Y =W;_#EZC/?-Z?
M,?7L(Y<9K<E]UJSWK,QI79K43G@Z0VK^5),/?4XV](7D0N\]: \/BICKDMP9
MBCB2G:5U0S\9%3Z.3[74PMXWTV4WMEZ&,*W ?7 85@;-Q:+_>/5@I"AM51>0
M(XP&&?3P=_"E5FE:^KQ$JV4J0-&WN=YQV0NHQ00-$53\1M>W.!Q1&,(_26;(
M3:XB3S-=E@(]C&0$B3#H9>T:57!T'+5A(:BY9$DA_8U'[)4K(1$X6H6 USX
M8L"N5Y-%SFXFP\-FBZZSC*/6YMVV)LV] :JI*(!4>/?:E#]M(YTS1JEMZQA0
M-2%(8B\?0=U.#/$<$Q)=/4.J6'.X8*((:[J!Q^8<6@YUT$?6\S]OR#9,D(S#
M3RT#AVV. 4-VI\*N-C9<BPK#G+U6$8J665:/TV2<=_KPPE2!K0Z=)'ZZA&N^
M'ETY7TNFX<<$)>9^5NN=+Q"^!NDQ1@"0EG/(W1108I6:[$:NJVZTQX,0?43G
MK]\>ZC])KU?YC$SIXUS4=*R%%'S4!\R&3%DZW<:U];]FVX,1<:VFCATD5.LJ
M:LA&WU=[)^,RIL)3=KCBA JB;Y&#P%C6>N&[ U3(8V@B@TZ-V+?W03MF!9>I
MX_6?CD>4\1TD7=8^_XWS+@S\-BY*\"J.7$6L\)6K4W]X(> T[<OL_ 3SGZ>&
MA&FJ&);R737(^]>(R)\4,N@%)UC8N4+:%B%*)\C:?I-  ZCRQ:"E[:EX0%1'
M1=Q3AG *HVAV3;%4W2AFJ@*EAA_N3\= 1@XT]92VIE<Q3AT&"N%X]M6 6NH'
MU'\GG'1(Z'62FX28W3LY-'OZ7$\M5EXV!B*+W$$I28(-ZQK9.(&YB$3W*M_#
MQ%0T3,K*3;P=_2)U0"TD UP7A@NJ(L=.>GG,Q+$$@2.@\BJX71U[U/X8 _&$
M1= TQ3UZ8)@I$M 4YF\R?EIM7N<DC($A,- +B$* NU,_--:A9J'H H0V1-&K
M3%186C#T]S%H9O<9\\S3@N,N[UZLSY1#XD"K0KP.\1@&AE/CAMWOUT7&X73L
MZX%"+"T\LH,LA@7CH4OYZIEJ%@R^@/-($-T<(V#8!KV#&)2GA;IAVQ,B"SE]
MYLUV= %+)J^#NN%GO%H& KBTL1!3;R]-71.MJMN("%F9B[%J2;NVAQL9@]4L
MM:A]"2X26/[4D'Z;4MB=(ZI=4P5&\F6QJ!F%L7X8:;?R>"S@NN:[E2\'U.%F
M46=-IY3XUXXU6YP%_T4=D^2 B8AI5,EBS*/(&G9)5=]2<3T24$&2Y=B],0V]
M:WI8L/$=%U*TLQB*<=/\175+(/(60\.B:<^ZEACI5=3C8>6"N1OIID0/#HL;
MK4Z!H)4?*72PM+1<<<HTZ1AUM(C08 SZ.@:"-*P=NNX*%_>!#-Q%DB(891[N
M,!^. -ZHC?[4=.N;/<BYG]CLAENF*D$?H[R!<T%12#3*W2#HES!/;P%(5=GO
MT@&QF3PXZ #N<6W!NDDKK#B9^Q/W]<\O@SLK(E'/:'E/^5I=M,&O7:[I]@<=
M<NP;%!<9FE2PD3\A-BS:2*^/+WYZHR_Y ?9Y&G1S<6=K)RRVQ7E;#H$0#6Q>
MIAD5R5/<H'<7+M>:2"FV_FB114!B$R^ :#5"%\,E8FMG>IEV&>G"+0"NKZ^7
M#TL<TJIQA48#&[G7;C%X5E(Y0<E&JJ]70-0%C3C4EX KW*15LZO"K6S^FH%3
MEJI;O/Y TJXG\JJ(V$37EO0M( ?I:ZA%AK4 ?FI)3!ME"IW)\-4#I5HK<1,3
M+K9IN:(N5MC:1'^L/QY"X!K1P-EXRTPJF;Z?4"W=,=S!V(;KUM+O!3=Y,P=O
MR6-F?4LHWC R2H>@BAKZLT>]TB&CO2 XI.L,="CG$IQWY371NLX[?/RXM'\1
M+;A8 =R2+:4)E\%-'IIHH_/D(5*F#%AA7DIKB.@LV+KN#T@_&<JY[?>]R9/5
M:*)-?M0--;)H+! L6*++WJ$\RPI'*?VMREP*,P-)5R:J_&+&+?=3VJ8MFYM:
ML5$?+;=670826O0 V$D8J!$RJWBS9W:,ECC!&/O#^]O8[RW?G*=9BKY+[G.C
M, K?W>.T%]_HM].)>\C!IUJDPG7\86EX"G6#XO15J%G- 925>XS02]PK5$+1
M8I,#SH W_X>K)061M1H7-%"6S2_1\CZTH84VM)6TH9VDMM_!I(1%&)!QQUSI
MI%>S.X7RTI3FL.F)(*>5K%S#+#)6@!)H\0CSR-1'I9#-!(PMR*(PP8%7OYOD
M+F4D2\:QZK5DSDXR=E2>9VP[1ITD[XR'\![VQ6!8>=)EV 0S6@J4Y_%8V]\P
M*NG<W[59<>K0<U(L+X1B6I0K5T5>=;;(]X0(N3,H>A#!91O(0CFZU7/+@BUS
MM_HT&%(X>U6C?X]AT8Z%/IP:LC1M8K_URD))BLG;T"(CDG.SAD.U_"!JT,V(
MS,;6;K[<X@\<&#,E]=5.#3LB 2 @IW+_\7!.DRNJ,#Z3A0=D2G4:O?1O#;EW
MW40$PNFB@(KLU.Z8!#A^7+1#AA*7K<2E]BGR#-%.F-IMO;B:ZA?@3EXL#*3A
MX4\*M XA[*V/9J$%,@;7I<2;G(&/\52#H]'5L@OISV?68K8,28M@8F$?2X$C
MB7VD& BA,#=7 J*:KQV/0^PH^FJ@)Z97?PN?HC^2DTXJWK0,;)>9'IXI(N4Q
M%89Q?D]VOF4"Z;&Q>G_[DL?0>,"QR?.Q=H.]'J0H^J2Z[*%Q=);DK 9GR50>
MS2CSECK)C;S@7!<#O5@F(G1/P)6!G*HKS_+J @G=B&9UKAC 3#_N0B]2/_IG
MIM>)_GBF,JUB;%&5_"P7+/#JBK]XBT <1*\)%.D-M[YIO>J$ +2W380@+ F%
M]?48J)/"UJ5.M__PR:8P N1CB@2"H ;O!HH@V&LBIW\+G7Y9VF G "N5%!T;
MD^PROTGBH*E=H/4#=GZ9N61<4^9[,^-2>_%^1Z0YG3-]T!DIO9H,M2F,*_J(
M!#IW9^B>PFY8%8&U9/4/>? 8U.=%)K5C$D2$C3SDPA,(ZU#+#1.*:;_N"X:Q
M$_3;*T&)>[HZ3'*T-6L9[UNQY^O[0^;J=->+XF163'Q>VL7O:P/D"P*Q9AE$
MA)-<><V8M"HM;TGP [=9_@4"*R-PNB ?P+(WA:OE902@EZG^S_;+#@$\\[ ;
M<-4]8\>=/"T'B$E$$,!Y!<3=-:@<2HAW>H#- N+X4V7/CU&0M-MDW,KTLVO%
MM("ZTX77G-HW'>,&2%46T#RJID26CLQ*QS]4XH@#IQ8M+F>P-&X C@J5%$/J
M*MZ*R;P&CMZ%83YB"3,GP*7MA DS2KU37,^$R3B9YH, 3UKW']@[^OX7>C9_
M$U&P.Z"+Y459P_GFW=%5^(Z(T?><86:+/#"#Q8O0H^(JDXWB$B](#<G2N6,S
MMFYV"_#_7#)BJO=D+;+?XFB?IEQSN.FKFM7ISAEFV>DN&Z4=B9_4 3@+/-CZ
M1PF3SVV66$HN:":N)A6(0OW_?(1" _AUC^#(,[DH$:H[*9>N:<92-H/*G%Q!
MD-F47H*5V>D_$@MA?@U@,XJT<D4PR3)=*IJ BHF^=88%<Z=VT.K$8)$V@2G[
MR[7XAEF5R$.SE,PL\\AM0,ZS)0 58DY1)L]EA<-Q:I%+3%DMJG/#D="22MN#
M@O/$'_"DB]FS,Y :=\Z<L[4WXP'H!F:+\@ (Y4UG$^5\9UVI2<;I'QOOOL>E
M,#:1-81:TCLKR[CS!7^E%]I;*5E1Q%+8PC*O,23.;I)\C/#O??U]NVR<!['5
MP<PE?CB 4IGKOFW=%NM"T7RW9/;+/G2)&3WD)<&FGR _-.%KHR\&(1A*7R@Z
MQ@EWYM"=;];;&BR5]@Q)X<4U;7Z!FO9[+.5AI4A9$BY:<]1VDY-=ED8<98,V
MD$6</2CZ,"GUC]HNC,X<<;#K^+(-7S]]/+,=7XZ@EA!_#1*,N:/(C=-3^"W%
M1QS_]@8.P:]ZR=KO ')X]Z!%E/;*K+B B^1:#NU;4?2O9;?8TK6@[*))Q72]
M>#%PM<9 (DZ8(@>NFG-B0QDB_#/>^<?;OVV[ZY1J8F#.$5QAR$\<Y891'.X4
M4;\H27-<U791I4EBP71.)=R%K@1L.SJ!TB7')&I EV@8IF@#SOH(U@:=&5K$
MK@3<DE*(5:R%PX#,6H0-8"F$]-4W]OQXKP#3MF+KOU=0O,BX9<A1=E8)<P,&
M.AU;A.]KOU5Q(Y('PAI!9D;T?>OU* B6<F(;$V%W1(/W=O0;P+!KH^/&F"OX
M$:^>_G_T_0W!AKU=A+G>;;$!]<]MZ\_'N)==<(BA9Z$+YV"4)S<0BAW$>I=C
M["B$[_$YP*]CX&'WPP/.#Q\9>XQ^^^>6/$E"U0& ["VL >+"V#+]&Z[!,X+
MDZ#'P.866G4/XMRL%/ZZ&KE&@D@O#(0E8ZXKS8FP9"D7]4_NX!A/QN^&G9;U
MBG0'G,XE)4@/0H(T)$B7PDDH( !;7"[)+"_VMWB_U#3JDYKB$"<K,PHF$3#V
MA&ZV#DYD%GPW>FI=OQ"LMH>--7K+Z'>CIUNUAJ0L?*)>] )JF\3W+#2!N"JF
M*E:QZ%\" U9@&QSL%=Q<XFX"1V50*&SWY6#7M\*_%47]: &85BX/[=0+8]OR
M8,;6OTFZXQA2@!Y PHP>XEJH!.C#^V/<O>9LH \YR;6)7I+/F@H?.(OB(+6G
MPF2%RF\0R!Q@(KDESAIF+B2)YD6M0^[R$U@CS; H5QB;I*[%C,!?\5JTCIQL
M"D@M=XYI7.E4&$CF G\UNQ^KY5<*MW@$T(:_0"IO8XM4$0>PAE-O4B\A'/\"
MR2\P+S$ <U[KP 1 9PH[;&+JMJBJ8MSW [?)MU>8XMUS_/59<6GRKU1IMUR,
M*='.99MZZQD8'A7Q>4RN!U,*BPR.$AIFBEUMN+1UI17H-=C6Q83H,_.NJ^'
MF.E/AX=G%N&2Z@'HT_C7+I1"YAP*%ZXZ11_@\HU%S^Q5/*#V##W8##L&F,.<
MUA]U+3<#QB)L2R_YX/5@&*8P^)!(<P*^E%Y@L" X%$]?;FFO1LL3A"(F2G\
M\I@*@:E2/8ZKA'*H+:"GN8Y'<.V8[QF[_4?PH/2>C<# @GIF$.)K)&<@1J!;
MA3&3O,O^41E=8^,XI$8Z#Y<Y+3]?M;?;D/,=<"S6;_CU]M7N)@6T($6)488!
M720P"F(Z$)6<^I[[ZF![W[ZA!KH9=\YEU*?&7"M.!OO)RL2%O ^G'B%94+#1
MXXX@\>R&W\6?KUDYEK[J7A/+A?8V(9!&VF*J6V&E61+N4D:_BT)."'Z"(Y05
M[<1YS6S)!-FIOZ&=::(-I'0;[YSAUS"U6886+X:0&[%I&=J^NS2C^E,;CJ6R
MB*4<RN"'28QD&6^4OKC)J,P>>.&/''_5HE@WMC;#J+%[H(\HM8X_.'J-]'Y=
M),<K,K:%*.O/H^D:JI/"E*6XH(UOM%ND6_=XSR 'E]](D]29K2?D25SNGHE7
ME=?RM@#FS-K,R@/X[C ((Y#0'$^L PUWY*U0V#284"$)%1E)^#1+7SCTFA_@
MRIJ.Y"_BG+'5$C')FP#LX/+'F8M ).KD?Q&6XG2E4D]KU.P6J'F>,G2R/3M:
M @K ,$VOOW^U\PI_'D'+&__\^(@+A8F\N,5T)5QM3YB))WR\./OT2U*4Z'A[
MX00OLO 7F$3N1QOX(]^5W6K$@C:D6O1+*U-V'_.42%](6(UEIE1FHQDS^@$C
MD_L?'O&*>%QF]:]X57T"[[,I@A"%(E_4Q >[==Q*+ ?W+<%?\)=Y[>+_1?\%
MMN:'(&\O4=Y,0VQ!!730T$0Y\A[*G<WJ!E$+HO9,4</V.<958/S%GG=1!AD+
M,O9,&4.").<?).F4-1:$+ C9,X6LTGILG%P_JC^(4UD\4%=-Q YYC%T Y+EC
M[7T0T2"BSS7KTC0;IQT3!$9G&W)U0]>'XKK,@%B;^56#Z 71>ZYVG&I8) @I
M:+^Y4H/LECHD(5'K87$$T0NB-U>MQTD-B%&#J,4()E50/Q.G^60D=H'R%PJV
MGEBP]4THV H%6_,IV I*WJ[,>BMY:(2@"H.,,*P(E;JH2[T$FR*(VW/%36L=
M;+\8$VHP ^DR!'\0L"!@SQ0P#VJ/X?2*,8+],B(TU_X"0/)0VZUE$+H@=,_6
M:MUQ4>83V>P;E%F0J^?*5:J@VO\**>(0&:,SR$Q3:%=9JFIF)\DJ^!5! (,
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
M!A_QB?[GSZ&Z6&28:U.2,*Y(UAZ\DQ3;SI':T'I9@+W-*%\">5W;<P->+C*
MA]H$%O2)G2P# UR@/_O@]I@\TGZ'_IF>DBO@-BP D0K2+5W6+%/S]W;-LB_<
MNR@S/C70?RLZ\8@1.R$MP;Z5GFH_NY6/20KZB?WL@K5>#2GG]*WTL$LQ\/L^
MT3;=#;9IL$T7P^]+B8.S\].SX_/+D^-5Y[T>D Z(JG%U2@F8US^P3J4:SY>J
M( ?9F)$WD)F%FL<^)<:/:8?V]A25<64/IW\]G:6X>UYD/-\U+4QGU&4NGC(O
M)U2/F$%-\L+;\)H$QF)H8"PL7T32SWS&A8W/31MX=3D)R\PUD_9O@;!_I*KG
ME])CU0^T-/&HT)\Q_WIPMF\^>;V#]W^;EF,R!NP@C6V@[Z0((77O&,FT5-3Y
M[;]D1.KTP#3<S-&W:P:/AY"W3@X="_9V]W<>4Z^WNS/K!0M;FDO*R<PZY_=\
M^X11FYZ[L+OS6=A9*NB9\GE7P62]ZE^4H,U3II8[HUD[O/3-'";=[D#-LFO;
M.V];47OO0/_GW;N9!^J'P\$ X,HOU9]QL8B]?N0@YR,4<UF9T]M4/;0._?'J
MX)GKL5B1FK4D/V8),,"==.-^MD!AF;,8K&2#UU,;_)AGV9=>H@;=%CAY*82!
M.N-G7XI!,6RZ8LB3[K5*M=3\&^J1UU\W_(),%D$YR#4YZJLL!6!))$().D&N
M3= )4TORL^JIA(AP%BDLFV$LU+_T]>Z;I]?;-D9O?-1^=1><C)\4](M-@N:0
MJ[/8FV9-50?PV/7'+:;8"MICYA[?\][-4"#+$X>@/S9"?V@YT?("!>]!@00%
M<O/#_YO$0T/*&!P7;VD6+5C/&]VSQ,_^\\D-9_!^VBOH)\IN"31B5A(5ZM?8
MZ7$*R(@>=>382KX[GT'7W7;T<W8+;4C8G3  -<\8!E3L-L!JJI+KI(JD9 [?
M*S5(U V5AKH'MZB*#I@A4L(^)^8':"B!9O&N^@_2X/E\T^,1]EDCR@)R'%*E
M5ZKB?*O4UKQ',[C]U#2XW#0N!OGE^*?#7\[.3X^.CS^>?/XIE(2LJ"1DKQX0
MI5X[-*KR R4H$B*T;@4@9W3D<ZU1<BCM_ S5G[O[V-2SN_NAKBZ[TM5#5:>.
MA0/*MO2I(")D4X[-[6+WDSEKS70&W:8G)ZT(^X4.J#04:]E13?20Q]Y5I.C_
M-U#7A%P+C N @"]6,4EOLL%-I9'VJ1V&-3KDUY//QQ>'GXXO?_]X<G'TR^G%
M;^>AMFQ5BN3MVBH2$*.(Y"@2@K1NZN0S4Q'K-=.O>FXC;ZB-EK71[5 ;'6JC
MY]ZW5R/]M9 A9X?GE_I6GN/%>7C^S^/+3Z?GY\<_G5Q<GA_J&0)JS6FX/%=S
M>;Y;W\L312G2LA0Y8>+"Y N$0CK]'!W_Z[>3R]];^A._'%XB3M+IT3]_/OWE
MX_%Y].OAY>7Q^45T^/EC=')Q\9O^U=EOYT<_'UX<7T2GG_B[$</3-+S.N^[T
MOH[?1+\2S)WH)7SN]5RG+NNL@M,INOB"L-"Z!J/N\^'%Q\-_F4;("\)4X0&_
M9H !^@P#!;R)]"VBJ*&SF SU-*.S7PY_W(Y.T^BCZBB$+MQMMZ+V3OLM01\
M3C?X 0".-QO;L05]E#/')/:-1M>*;N,B^JJ]O]U^_V2OXO75FQI'J[*%AR/M
MX/R9 %)$]-E",_ZL_XB<Z3UL_].SN(!9S# 5'CJ@'QFKQ@"'#)2/-&2 +-J[
M[Q#=#M!X ?NS'^>J3R-ZKNU7*\6=-]''!+I=TVZQ .OUL@ZH8Q0G7>SM[,1%
M'U"VZ?6P.F?]K,RS-.D4-'7"'VS93F/ .2R4PO4CK U\-(![=I(1!L*@A=+R
MMMTF@P'"#2;I&$%BKL SAQX,A:")T;A0!E36@A M8IV[;TR7*40+#\>EOHKU
M=4F#.&%VHN@W/(''_QE#%R9XUBJE9MKH;*"-F@6UJTC?7\L>P\,@T2R-I"-'
MPJ'#+J\FP_53:S;&%]H[NS!=?7[.+2!D=+'U3]!12=K)\E&68[CB:D)1$H1"
M8O@7)42@I35K9QOTS3NM@7K8O*M%Z$P?VHD^E!SA@.TC')0VO!-B'4*GG)R<
M5,(=U/A[WT-1</3T>LF (5OT:W;;.]#K7T3H!S 2<0'(V!,M<1'@:76CTTZ9
M@2K9VR55N1!Q4F](*^EQ@]8]$Z"^/^7QJ#]'K%7CP/W #TF&6N'GG>]?)< Z
M S[7WO8?H^M7VBLJOW]U#6]/.C-]C:GB_L=8UL%[E=[K7O!>@_>Z%-29U[TW
MT1E3YL';^((2%YI6Y>=HM>0QYYH.>UIU)JCGS5?S15Q@=QWBV1^=?>*?BA)#
M^<:'_/=$WX9J5))!K6^(G59M]V<=:(@S&RBC.!*;,A[!C?R5EG_@<!@P8AE
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
M2O3U*LH"'?#M%Y7SD&:<KVM$4[4U9E"'Z3V#T%-+&!(&$M&6#UR-$ZV3J6Z
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
M<7I1"]J+K.X(J= &>+(A\!<"?^LD:NL\]@V0HG!,-GWL89@A/K[N,KSZL6^
M)@RJ?M/''H895/W+3(4^ =SPT]G'):(;AF#:PL_+JA7W9KTK[&O8U["OZ_.N
ML*]A7YN[KRM(#07TS_6"_EG7RH3E(0@=!.RK< !>\ '8"M*_N=*_N<AO.\LO
MDUP;Y+=-DK:@_1<ZU]=OEP\PLM)SM.PBS\TX1YM[C[S^9OE03JL] ,TN/@T8
MHHU[U^(Q1)M8V;WNN[9)$K+7Q!Z3==^T31*0=_M-1"%>"T<O"-IC=J>1W6[K
MOFF;)" 'RV>D:8 B6KZ?$)K40DEV*,E>:U%;Y[%O@!2%8[+I8P_#?)"H-WGD
M+UZ&5S_V#="$0=5O^MC#,(.J?YE-:A6\3FQ >R$!U">%=1I0W3*/@/]!$XEQ
MUCTX&@0MI!Y#P/]Q K+?1$44,H]!G\TL^%PZ9?:&E'(&O?@H0=MO8E77TP0M
MI$+7S),-@;\0^%LG45OGL6^ %(5CLNEC#\,,\?%UE^'5CWT#-&%0]9L^]C#,
MH.K7,!4Z-=.W>J9SR(^^]]*CY^I&I6.U[,!,W=Q6KV,JVEX/*NIFXZN!JJC[
M!865&A!07O42M-OMY3=N-5,8FSFJ<$16O02[N^&$S![5"QC X\RXZ3$]2>K>
M+3]Y\T2A6XM4=T-/5-#NJUZ"5> O+?.@+1UN*5P2R[LD7K>77TNR5.%]=MY?
M_/ 7_==8ZQ7Y 1C"#]%W5_G7WF_II=7/_2.R6,BC?J8G'Q=?BJB<C&#%!I.H
M']^HJ*\_HO+H\.),_ZD?I]'08B!%HSSKCCMEL3WC!0\;AUFR7I:66_CO;Z.D
MU!O6>111R+_&<5[JGR;1D1[FM2JB)#71B>AJ$OVDLFN]C?VD$YUJ@=9_?/T5
M?&28# ;Z8<6;Z!__\)E&GC =W)"HHP8@*!TM5M^_VGF%/[.8X<]T1> _Y=Q[
ML1[+Y-OH[Y?)4 __L[J-SO6FI'__$-':)/_52[.[ Q$9>3PA+/,AJI,X*^<[
M.UB",XB+0LMFK\1QOIHI6D;\YAF9JHN[+49UU;YI80K3S.]AD7XYCIV'!>/X
M/1V5:O%F4;A5H))ARH,NR/[;Z-/O[;?ZV<-1G*NNWO>R'_UK#W^[%(5:&U5=
MC3G:Y.V_;TGV%RT2^-OE (K,7226%$*_7WZJ%\&R5J]NH1JARMIS$UMS82?I
M#!E]VF-9\)>C"^>C"A:RPX\;X@N0MY.THTW98E;^ZFD/??U1T5.7XZP&>5L?
M>3M3.?QYKN)&_D[S[_15&GL;)D9!;06U%=36JM76<AR2A7C)"W>(?3%<2(A\
M%=&%L&YAW<*ZA75K^+HM*52V"B)/6WX:)[?QK"C1X@H<&E?/'$BLYC_7_6^V
MWS=2LAI0X1,.P LX +O+K]8+\K_>(VJ&X+:7SY806#S73OZ#_K^?Q'#I/0*!
MQ7/MSM'FWB.O=U=0BAIH/&?'%^88.3CJ)VD<H-Z>\:Z%0V &5K0U?]?"X9J;
MB 6X[INV20*RN[.]TSP)60L?+PC:HP2MB42QZ[YIFR0@[>7G$AJ@B);O(2P]
M _G/+%?+]B.:XJ4W;T3-B!N\78'9$3(GZSVB9DCN"NR8(+CK/:)F".X*^"="
MRB_(?V/D_W5[N]U(D0BYNDT?44,.P+N7=@":[8C/T<7^+=4+V(TNRKA410B#
M/N-=BXYRO=UM8IAKW7=MDR2DW41>PW7?M$T2D/=-S*2LA8L6Y.PQN_.NB9GA
M==^T31*0W;TF5I>$E-VLJ3_<GS@>Y]EHZ605#?'6FS>B9L0/OEF^81HR'^L]
MHF8([L[Z9CY>AI@T;T3-$-S=]2V26 M_L"G2UKP1-4/^=T)[=;/%I'DC:H;@
MOEM?7(Q-=)_K,?7GYBV?EGV5KYJ/8X5(\K.)C9X+5KE4W3"OH:_+5==,"6KF
MJ()</U&NMX)4SQK5"QC XYFPYX))L/PZIR=*W9/F]ZBRI@T^4T$G/_6 [&SX
M 6G"Y()V7Y!V;[]?/7-G8]3[@IWIRE+4.M-(!/F,Z,/\_/#+K(P'44[42*L6
MD><NRPIOTIE<O"N-,34"5VX=%JK=;C>$N7Y-Q'^=Q[X6$AF.[@,7:G<%W<7K
M+/U/'WOS<F.-)#"?U\B?F$5;>4Q\KH=AX:FUYB]!N W#;?C@A7K]=O6>_NH5
MP,JC66NE )Y\7S4S3KS(Z3PQ_+;\8MH&GLEGQ^C$#W_1?XVUZI4?@"%,\:?S
M.ZL?\YZ+O_G'/Z++?E)$^-BHFQ3Q]76NKJ$YW(3'HJM)5/95-,@Z<9ED:92D
ML%B=?I24T6U<1"K.4]7=GGXGOR.:9G>O&5_MB.W:#O1+<,?[-J)79B.]Z3LB
MQF=V'7^I]VX0%\7WKWX\/_MT%E^K'W,5?SG4_WDUO0Y>!)'%BYDVIY[S>3R\
M4CD]Z#L0#O-EI.3LQ<-D,/DV^OME,M1K^%G=1N?9,$[_SI2=1?)?+5\',&H6
MF+_NX/\JE)YIE@_C@?D2O,#^[M4/[8/OOH8W_S!KS<V01GJ\6U<P\:VXIV?S
M;10/;N-),6-UIF3\NWYN'D5K3 ; #JH-/G8[.\Y*X-_AW_L\$XR UQV.&0?3
M_5WN^JNO[YVL'-#4_'Y6L1[@] 3%]VO7OW9@C]UIN8E)J>6KP[^[B?,D3L7K
M4 #+/$Z+GOX-_#X%OM+OXJB?J][WK_YZ>?CC+\>GGXY./U\>?[Z\ -8V.+E9
M+SK2#]0B6WSW=5R_5(\\<UXT??< X^;GK!*T"OC7V^C3[^VW\.:O,(X8Z>48
M@'[(U2A7!9R>;A2#NB .9/BD]M/^II=T.(IS_<?;I.Q'_]K#Y[3T1_7'HZYR
MG]87R-^B7IX-^65[-3KF$>KOKHF=ZLLE'@RBDR.K]LRXN]%7[[</[.RR7,]B
MYV]R"6B(-(^HJ[]:9OI=>99>JSSJ:WG:4GIN/1#T?(+S'&3724?/=0@_Z"<=
M%DF\349#5#,4LRAZ*#O^4'9@0:>&PJO%#SPY\N1@&">I'IV*A^*YXA%:W7_5
M]M_2AK?(6=)N?;6WW?8_]HV_7]$H3[3>T,<$;Q M%>-!"3NK=W_<T:_UQN(M
MQL)V^M/9Q[HMWO-GO ]3>>@6\]#UB943&N69GF19F&V0+Q8;^G9[UW_Q[ VU
M+QYDM^ZU2>IMKY4W^_[(G%I\5LT([UB'=_O;^[,70E_^PRQ7YD'PG4ZL+:BD
MG*!ET%5=;;"!'M"C'BI5\IKQT.>SR37*M7(QHQCH)<]R-&"^C?1!5/D@0=7Z
MN[YCMC)]YK;@7Q%Q:,.2V&73!^*,)AA=3D8J>OT5_)47J7@S\RI^Z%S(]NJH
M 9B:'6V^?O]JYQ7^S.8L_OQX(X-L(VG20!)TQI56>WEV>B4.[M5,BY1_G&L]
M=GT-]B)<JN460SR9=7YW9VZT\[]??J2CZU_"_.OE,+W-O49LP:4-=\IES1!7
M*:F-D-?VW,35V9LS)/-YIV IXC[GXL-%2-?C-=*&RML)&T)SE;;7']G:6TY\
M-LC;^LC;F<KASW,5-[)@FW^3K_H^GT,YX>X^UQ,^W-TX.?+]A<5NT(JR+'>_
MM;V2MZYFKF&%-_.M#5SA)7E!'"C8?[M$L+'V.]:S/YO@UC\:V33?O 3VIA2A
M+(OLOGT0@$3""7C!)V!O!4B=X0"L]XB:(;F[[U\8:46#NO]JC,-YFGV_VIQE
M@ %_QKL6SEBQ\TT3 >?7?=LV241>O]UO(JO)D^:R['+K(&F/DK3=%6!7-+:(
M>+%QH-H\P .#0ZL "5L7A^-AF;PFSV8NX#9-GN"&B-HZCWT#I"@<DTT?>QCF
M@T2]R2-?O0RO911G[ZT'N@0%$"_$;5K79,,<9K&_=[#\[L]57P]!TE;BY^]M
MCI__8E3C6D:4VDVDN0P!I1!0"IYR\)3#V,,Q"<=DW41MX^,=JQ;U)H]\]3*\
ME@&E)W3=?#K[N-2VF^!A+?B\K%IQ;]:[PKZ&?6WNOJX@_A :F]:KJGU=X]_+
M*X[_YMWV<N N0E]'. %-/ &O5X 1_[+0H#?B'&UN?]3K]@NC&F]XDBLT2#7N
M78O.(._M+=\(6[5YM5GO6GB-P?[RK90-L3^"H#U*T';WMY<#]QFJ64(U2TC3
MAS3].HO:.H]] Z0H')--'WL89JAF>9G5+)7V**Q4>2%^T[KF+.8$-'C0//=K
MW;WF(&DUCOX&M:V\&-6XEB&E=YLC:"&BM&:V7W"5@ZN\3J*VSF/? "D*QV33
MQQZ&&2)*:QA1JJ6PGT.8Z;T796)>O65;ZW5S6[V.J6A[(#CO9F/@9/75_8)\
MC0:$&5:]! ?[^]O?!&%L[JC"$5GU$KR&6L\U.2)K$=NKOVA7?=2;9@Y.C^F)
MTKO\;,=2A??9\4+QPU_T7X%U77[@H5SR\(M_1+:;<-3/]-SCXDL1E9,1+-A@
M$O7C&Q7U]4=4'AU>G.D_]>-46XNFA%Q\:_OIK/9BS8B3'O[];91H\S/I/*IY
M_W<5YUN9WO$M^%=$_*9%E*3&C(VN)M%/*KO6F]E/.M&I%FO]Q]=?P4>&R6"@
MGUB\^<<_? 2 )TP)=R7JJ %(2T?+UO>O=E[ASRQK^+.<="_6[Y]\&_W],AGJ
M(7]6M]&Y7MGT[TS=6B3_U6NRNP/FNCR88+-_B.IDS4KXS@X&[0=Q46BI[)4X
MN%<SA<H(WL()T1>BM!Y*?SZ?MSZ9&'AW9V[,P(:B7#]\.(ISU=4;7_8C_O5R
M*G>?1>^[0G?ZH=*R2DEMA+S.C\C::.(DG2N7M3D%@3C],4/T1U.]V.:Y= V0
MO).THXV68E8LZVD/??U1T5.7XY5LJ.1MI*8[4SG\>:[B1B9M\^_TE=_LJ\!H
ML9'S.+F-9UUOC>^@;D*G_4:'!U>Y .V#@^4W\[TPR5R3888#])0%>-T^6#YS
M:4"'V>!SV% <F84=H&^67_L;P&5F6\=SM'N/^DD:A\+[9[QKX<U$>^WEET^L
M6E-OUKN6T0740.BAM3!=@J0]2M+>-9'X;1/O^*5'P/Z9Y6K9ED"C#?(U&6:#
M_8;==P?KZSB\8)%:DV$V6/)?OUU^/6>(.#5%,-=DF$T^/^V7%K%MMC4Z1SOS
MMU0O8#>Z*.-2%<WS)1I,E;*HD[XHZ^_M_O(QR5_H!J]\ *N1L/=!P%[* %8C
M8'M-Q/%ZTE2:;5\L/=IU/,ZST=);I)OL#:S),!OLM.Q]L[Y._PN6J#499H,%
M?XV=]1<L4&LRS ;+_?OE)T-7.M^&VY#U':MS,QE/R[[*5]WG_NPNS65BQ#52
M8<QKZ$]S*%>/E- ,"6KFJ()</S5?L[/\%I4GBM!ZI#>;>3X:-*HG !\N2O9W
MWVZX\#?([JLLQ4Q0Q><8RBM!@6NR"_8$K+C0\;8."]4<:,8U$?]U'OM:2&0X
MN@]<J.9 1KZLNL.UU@ /&F:#0&KG$?M=)E)D8Y PU[R64?SP;+S,?T27_:2(
M"-ZQFQ3Q]76NKJ'X,,H=PF395]$@ZR! )2!+ZJ7I]*.DC&[C(E)QGJKN++C,
MZ'%XF9V!?ASN9-\&FLML9( B^3=F-_&7%@GRQ_.S3V?QM?HQ5_&70_V?R@[=
M T\T]9S/X^&5RNE!'F3G(_ M#T8.S/*O._B_"@Y2FN7#>&"^!"^POWOU0_N;
MF<B=_GQ&>KQ;5S#QK;BG9_-M% ]NXTDQ8W6F9/>[?FX>16M,-_L.J@,!NVFN
M?_X=_KW/,T$ONT[H9QPX]W>YZZ^^OG>RM3B@9GX_JU@/<'J"55#6ZOK7#NRQ
M.UT#]TJ_NXGS)$[%ZU  RSQ.BY[^#?P> 5^_BZ-^KGK?O_KKY>&/OQS_7_;>
MM;MMY$@8_IY?@=?Q[&.? VG00.,V,_$YLBPGVG4LKZW9//OI.0V@(2%# 0P
M6E9^_5O5C2L)4I3$"RBU3^*Q*!!=75U57?>Z^'AZ\?GR[//E-VS"A#R:Q=HI
MO!!(MOCM9S:,JD4.6\ESO2 /\60X!V0KFTP:(1!53>$B[36J5G5O62W+-9#J
M/Z%0:-IVQGEVTW3K/)8WGW9^.O0N8LV_RUCQ+BV";Y>9-N%% 6^!(X@ NWFO
M?V^>1;.P%%)IDO <7X;2ZP[;YPJQU4,5RJ\I@UM$= ?.XKC@)0H\>%N67G77
MN&[Z"E<K'..\TH$]P;=?X]S![K9LV):N17D"#^,#3'OM'-O=)XAS;/W4O 6A
MKM\L,#"TPPH9K/>MOWHM@-MJ8#S8Q^VO>0:'\G<A.U2;84U;^/Q1 5S5SG55
MO.:I30Y;M7R-AH:+1*\-OE+[;[KYOJU#W10/N*/FT'9>8I?-+1&@I0A0$>!:
M!'C(;5X523Y+DMSFI;S90+0BP&=)@(<L$Y]UZVMJ[*$42MJU8%/'R;+3WV]$
M8GPQDK6<Y..(96YN.YZIVE K,CYX,G;WT,).D?%A0[0SXO0/MY)NV98>$@P>
MU8;&0-I/P/O!B.TG[-&CNT]??&'D]8+!W"]MO[$.5T]9MJ<Q51(,F-X;-ZIO
MNL'B79VBZFC=/[QWEKO[+K2'HR\I<IDG%WOW2K@BE]&3R[/LJJ;.==6ML7-W
MIQ(#HR>7$8N!086Y\\,34^E7)=/VEEP6*90)B0_-:>SKTEJ2=M)0"37 9BF2
M0IMF25H6F!]:):=IK "TW4Q9#H^669TRI&O3/(%7P>KX!--R7LPF)28=8Q)M
M_?9.>FJ=WGL)O[[J0A*S[UDNLCD36"8LYTY#OCA)KV1^ZY*W=R$> '=I^FZ+
MAAM6\AQ^#5\O  .P$?O8_$G'E%NGCQRQWZD,\[(KD6A=[U'[Q +X@GQ%^VYR
M;,DW4?N^5RWLOGKQV;]FR?0&'M,PSSC#'CI:!HQPS5FTL)YY[/XDT57O']9V
MW76WH8LL8L!3E3B,&<VP'&] P/40X[]_:[.=ZZJ/H63B3:07[Y==>EG;UE)N
MT2NLRQR2>YAD*(<;?F4>DY_$(;?GR1</?XY.YD@!7D./'4ESQ+N7Z!9Y%)Y>
MQC+]-/(>V_2XYB'TAMN:=%@'?N<=V]5[Z.)[YG8_O)E-$N)ZZ>8R[41EGJO,
M\W$GN=5%,RK);3EIK0GB<'F@(L"U"%!E62H"5%F6AYIEN9>&\RK+4J6GK>5V
M)+;*:5!T?/AT;#EJ&L)SIN.19MRLF5SC'.Y@VF5[&G%RS89'"*KDF@VMM8DP
MJ7.\67>,"I..=JW-1-5'.+)/D8N*JH\PJKX\DD<&0GFU<USOMY1Z;##/6R.8
M-Q"^,^OP%Z'>/?&OK87R+ !>P& .A. >$,HSQ7N"60E/8609D!!/6+DJ$+F9
M'H'KMJ3ZQB>3)+W2M;_R%+N9B4V<1#=)FA1ESLKD.]?.?DQY6C2CEC=/I0T0
M5QT@6!\(7@&AW?*<:Z]-TND>UHU"-RD0MTEYK;TF_C'M/5<G<> 2KXES["Z^
MQ3H6J1JOR;'3^65%+;W< D%=#6\@,S2LT:-3! J@E[TA<>6< Q4@1]2[ @*
M]4B]7@4!/;:602 A705!A_&6KM_[10\8LP5FCHO1 \F+ GX!)Q7S!O@&SYMI
MJK8A0G'=8Z][Q*V,FZ,4Q^]TFVL?M+K9.\T9X(Z][N%T3Z%N.I?VTG66G4&/
M4'I'8'4@9^DRQ)LMV+OM9O>5%YSEX;6 [0-(KTDFA?OFY45U+_]S5I1)?%?I
M!7.TT0,GZH!3XU2O6K*V!Q5F*8AVP2O=+^ +_C6#->.D:N?*XSC+RZ)A&SA=
M.(P06RR6/+Q.P1B_2N \>DT0ST_%F[ #(IM.)]6[ (R6E8!K&OG3HP-8X+7=
M8_[Y/!LI@7[M9X7UI4'(9M5EWZ[8WQ<+@662$D _UN[%7S?1K)=#![OP&TA[
MTFE.6VB_U7E_;]\M0'53RM^/OQW+2ZE(V+%V 4"+1I5'9784P6'(ZUG'5>X%
MOVW/V0*L"US#1>"TGRRP\B#@2X!].#F_4@V G]0 V#)4 ^#%S:H&P!MI +R<
M.]:])S]GZ=$%Z/I,I/*>IZ (<.U-=4F^O>\8UUUE080,;>C T_D6$OJ6NYLW
MG-2WTKVP_22^3:V[X?25QV5 W=/\=9EO;-194)LFC,UF0#TS\EG9NE61CR*?
M)W2Y?#SY;"7A;:D_>RCTNHW;<#,);X\-TW[,<CC15 MG><[3\$X3NB#:76!(
M5T53NI;R%=F0&S[-[64\C"B;Z)Y\HLUC=1=9&W7>QO+PX?ZIY7&!QCI[8[3;
M4DPP,B:@2QL#[9]8]J8TO61 GPG]/VFG.&?IN7+%?C3&C>J"YZC \Z)QZ.]+
M[]LMA^]BM:<E9=5ZE;&?.^70-"9%/H-'H<AG)UV>#AJ$U0K"4T[R)5#?BW$:
M-8I"(D-M;:ZA_$ YC,8(TPZM7V?IB.W]'_\8Y/MH:&*,,.V43I671@%Z"!3]
M)$5F>;/<@R?S/>E<NTQAZ6!T"Y'.S9STN(/U]_#?N($_@.,?*UPC/UE%EB\3
MKI&?K"++L6L;%'>R>[</IEEG39KUFRI*]';?3I_'8V<,5#K'3UCM$&4SS"!?
MIW;A6<:A1X.1-V1I!YK#I>B115L4]RKNW5*VR9Y"3H=-T8<-_7BH3_'C/$:(
MMY^\X+U1]!)KH??C4&<:;;B*7QLN-[RGH</<XIL>9+&PZ4TOL-KHZ'3<Z=3.
M]SJ(B/+Y3N,/;;&&NEM4>0^$K]YAL+LJP1^D=5&67Y5+B[7]M@/!0.%[/%^
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
MZ(^G1?6;JN].U0A2E,1V>K-V=B*;A.+CG08*LCG?6@B8:\E'C6/O'NIJ1;]
M757&^J<U_@RB;%6+VH7^M,/-_%+Y(^[W*&;?@:Y$C5J+K]LL_Z/3. 5?S*,,
M6YZ*9B'PQ$F1L"65N"W7C9IQSIN0UE+&J3J(-K018^'@RIA89XXH4H=M]ULP
MSIT<'-#"N>7)=YZ*IJ*=!A%9/$@+3;L9)/<E??2P ZEGM(UMVK:HB>Q%B#V2
M$M%EK=/0M#^;$W@BY#PJVGX3-ZR<Y8EL@;9B8=-N6QH>-K5\;!Q%R\7L6MZE
M^9:>1K\_Z3"%+!Q:ATQZ34JQ'9MH(+18K8]_1'O/0#0->DU(N_+.C^:B:D6H
M+W2AU*M>0469)R%>)N*!JDDP3H_-L5>SG&.,HDCT );([ BPNI>=;' 4WFG\
MA_QM-0ZYPK0DTF/R* F^78)>N[$OW*]_/3GYHGUL>H'\':@!.RCMJL3YGK-N
M(.ST()YO@-MM! */',N;'OO[\5S>UFG]EBB9S/# FYG"<$E7'7+P_U7KLN;Q
MMD7*3866NJ$9*V3?$"FYD#'A64E)7T6'<*&$_+7NKO&-ARCRJG9+ W@[JTE,
M](<JBD8OP48W41)CIRHA0(L$*$CT'T_9#>]L;1%6*4I0%1$MM85<2(7"@JT>
MV^<%(@ML?YC=BD9;\#%@=@&M[3=D^["B:NHCEI>-B.=!Z32@ZK98'$" ;#RW
M:C>B=Q"P(K:9;31$H02*LX/-QK.)[("5LLE=46EJ\EK)<M$GKND%*OK.I4>R
MG2<0@0 3VYX$/&0ST;Z$W]4]YIAL5 ^0(-'@*E+&)H7L:0:"%19 XZK!3--P
M)V\[M%2]0@<VWVS[AJ/DDAO"1BNLWK[02;O=>UKULG\8H@^F>%?5OA'[U,C.
M^,W@ .P((V9H=SJBBCYHK9KW!D>PO]47/VHY1G3=86E-7LL 701O  $(L"1+
M>:#5,4>-TM"EC0I).B"V;/L.U^WAV22LV4\R7Y*+-CK8M4=\O;TO9"_[ F1]
M$L/II:4XURRM59"J*2\()&DS=';5M$R2?5P;U?@&VXKU48TZD"0P<9D/[!Y7
M!8$%R^!!R+D"];NQD1UV*6H9HD.M2V^1%3+ZL9)8R(P,&][+KJG(&(VP*-8P
M$VLQT8AT*<ZK>U%>DE7+TTZ#(=AMDD65S JSR>PFE5UVD:;C#/ZJK!7AHL!^
MQBMQ,MCD9SVD;+O1S\ 1]$M71]GJQ[JGU4]_5YMH]J,=1KN?_L8?V_!G0*][
MWBU_'J%"KM<EYR6VQGEX)>/AE5/NO39WT_UU+D5;O[_+EN#\.?79>48 ;8QV
M0&^Y72]&\J@^3<^*?G:8B/:(G30':0[M:FR\T05WZR!NAEO,/M ;919L1KJE
MYC+:7OI.'0!5' "(XR?<_YQ-[K"/^7/IEW8 1''X>L<V"7)[@G0O+=L.@!X/
M ,073K9*C!XFB"^<;)6T/4P07SC9[KZWQ,YH8MP>D)'[<H8=WNM3WQI5@LOC
M*'-D^K6*G+;#+Q?"HVW&RR\'V)MV:VMOM>7CB/>M</ZRUE8X5SA_"6LKG"N<
M+ZX\#MUPS$AZJ<3Q+-=6.%<X?PEK*YPKG+^$M4>.\WTH6#(_UO36[I.Q W==
M5930>MHDXAY48#;^AB,'U37\J8TD1M=,9">[MBS=<WQ%B@I8Q3</XANJ6]Y>
M.WV^2%(\*& 5WRSNFE+=(43QC0)6\<U#=DTL0W?4A:. 58SS0,8Q;9UZ!]#G
M])G1XD$!JQAG<=>$>+KK.2^!<?;LU=RJOY(XE</RX__5L ^/]N:*)>E;;9_G
M.A+IL4\P5G/X4WG7U5U[K[JB.N&Q@+%=0GM#=<,9.:6MWL%>^[XK^MPV?1)+
M-ZV]SM96!'K88&R90$V=* %ZD(0Q$C"V3I_4V:L1J.CSL,'8-GVZND5?Y 6_
M9Z_%"'*Q&M_&65$F-Z+K:\E^=*=QL"#[SE^""^N% #L&Q^@;HOO6L_"+COCB
M'#\I'A2P8^ ;G^SUFA[_(2E@GS/Y6SJU#F!PKJ*IYPCL&!B NHK\%; OEOPM
MHLA? ?MBR=\&HWGW;0%?7C+1 R9V;,\+EV9IF*5EGDTF./,IP:Y[.$9K3)ZY
MT4V&>/A ]1'+E$UMX-[HE+-?H^J15#1BSYOBBR=!.PJ^<+R]EEB-F83&#)LB
M[_7(V]2II0C\ &%3!+YVB)$:2J\9PXX47XR(+T#==_<:>1\S$8T9-D7@:\9(
M=-/=:ZWJ,VK:O\(I1G%7:SD$-]XW;*!+OW8P;<,>C\>1"B*<_AUE,S&2?HU9
MWL^^LGA4V+%<W;#WFC-T^/1^^#L8%TTJCEV%'8OH/AF5_G)X]'[X.Q@732J.
M784=N&--JCCVA>]@7#2I.'85=HCIZK9O*)9]V3L8%U$JEEV%'6(ZND%V/UWT
M61'\X>]@7$2I6'85=HA!=,=^N;?LR!SV*[)856Q-Q=94F'7\L!W *2LR5; =
MP"DK,E6P'< I*S)5L!W *2LR5; =P"DK,CTTG\53_36;S3S4XBPMCVXYD@["
M/XE@A7^('WETQ&"#[(IKZ>PFX#G6YX;9S4V6RLS#U3F'&X0GFY5%R5)$HW:D
M?4@F,P#NQ?K@#M+I/!()N&?WL6/JU!Y5I<+A4>[A[T#QWKYX;[^M!@^?<@]_
M!XKW]L1[AC.JPM7#H]S#WX'BO3WQGN6/JBW"X5'NX>] \=Y>>(_HKJW2Z%_X
M#A3O[8GWB.>_6-[;L]=[CTEY(^'Z\?*I0I "0Y&+ D.1BP)#D<O^$:3 4.2B
MP%#D,F)S;F3Y2N)+OVA)"2"'PSE#7WF8I6$R25B99"FF+HGV:F6F-:W6SKY\
M^^4EC)YX(<#N9IR)0K8"5I'Q<T&V E:1\3- M@)6D?$S0+8"5I'Q,T"V E:1
M\6B0K?( #M[WIYRC"@Q%+F- D )#D8L"0Y&+ D.1R]X1I,!X@>2B\@#JB6DB
MA!_)7B :9WF:I%>%-N6Y;$ZB OL[!G;E\8ZOK?1.=FT<[W=0V8LDQ(,"5G'-
MXJZ!:_9:,_DB"?&@@%5<L[AKX]C=ZRB1%TF(!P6LXIK%79O'QEYKA%\D(1X4
ML(IK%G<-7&,IKE' *JYYR*[)L?\BO %[]E$^8$C4AER2Q*E\DF=QS,.RP&JC
M\IIK+,B^P]_1/V=%>0-?7]TP><?=2%2C]4T*D$UMX#X;SQA5-ZDQT="885/T
MO1Y]OP$"'U6+WC6):/6NWA[@CA1;C(LMQC4F6+&%8HM1L(6Z+4:Q(\46(V(+
MX(I1M7L>$PV-&39%WVN+?=,[0 +?CM@?F;-M7-/-7KUKFOV,,U-0-;=^YH&%
M46''.+9?;D-LM0/%KX?'KZ/2Y ^/V@]_!^.B2,6OJ[!C'#N&XM>7O8-Q4:3B
MUU78,4<63C\\:C_\'8R+(A6_KL*..;)XS^%1^^'O8%P4J?AU%7;(L?-RA]VO
M<,PO?/0G>)+!*2T^+/#X6Y#_// KB=G!K]1(&NJ,_WY6)"DO"NUB5DZR[(]5
M[WG"TCT?/?&$-_YBEFOA+,_A,RVHP<@D&!I+(^UJED0L#;EVRPIMFF??DXA'
M6I+"0[GV<3:9:/_+62X>_0@?E=?:?\]87G+X95( ,6BF85+M*R]FD[)H??WP
MFXDNOI7S"<,P0#&!-VL1#_\XUBZO><'AF50+N,;"$("2BV(.;Y)^YT69Y5K!
MPWJ2 *P\<*JW/"B :+0C[?;V]GAZG95YEB9A<1QF-\<[1G(\*V<Y,'V%"(1Y
MRG,Q"J$0>,"M9? 7/)KEMRR/CO , %GP9D"0R%8&<D]+!H=4(2,IM#B9X#/X
MANI0_N//GFD:OS[T;,37R*_](Q+?G0+0L+H<VP#8SR:80ZVELYN #Z$=]I8G
MQ1]R6S.@G1QA+A->Z%J1W7!\ +@YO-888"0"4&;U^7X!\+1S73N'#6OD1*9M
MPRYS/LWR\E@[J585^!/(FJ6 +H"/([=J,0N!,A!/LTD$.Y@52#_E#/9:8[[,
M8,DXAJ_> %KS!'9YI\5Y=B.0QW],@:KDL6R+1(9$P&F>"-FIG80 .R +SO2L
M*!.$L=BU/("]8Y18L&6<I,#^@*4N&>*Y!0S/+),\6?!)Q8QXYFPZG<!F:N9D
M[9:F\-Y0$((D@)S_:Y; RVY8RJ[$R_%\;M@?\$JX0Y(87@.?\1H3\O5%,;N9
MRB/2_@&0\$G"@201D#B;3+);7 K>$_ !ZL2G;H!DM+!&.>P&9%MYS<H&GG_.
MHBL!S>TU3\5^[O"=2"$#N_EEDP<DKATMY!.\V$)8YB^OC%?BY^KR%#]W22EF
M-\GD[A?M_UPF-X"BS_Q6^YH!1O]//9LE^3=<F<28MIH),8R?^IH+!FE_U3KW
M;Z.:P.(30/E?7GWX]N7CIZ0H+Q'"04WC*2'O:D<U@)(<AW%78W -567@K=J\
MGE)FTR4[?R>$HK.>!MU?BLW*;'BI^W2TWU"AZ?$H7(J9O"I^ 7D'ZB2(?"XF
MZGSGZ8QK.%D'F 4?^.UG_/:[7_ *G>=#$76OKUM@#\$)0/IP+PE:E[=Q\RHA
MQZL5*KXHM%G1,&C-(Y(I&Q;508Z'DUDD>/ :;W20LC<@1>IW DL)R7T+/'XM
MY'2UZ+]YLQ[PX^T0\]9_X.H$L0\B&RZ :26#X%*?3GA'(ZB?0O5%UP2+HUK1
M ZC0DAM@LU*\ 790WZ7L!IF\?I&\?GC4P@>/I+S$K<*%=JQ=B!UU15:+'8D.
M*9XJ+%4PXB?3#*[&6K4!4&=XA<UR@&/5]O,,=2*-E94<!5RB3(;UDG(B3W<!
MJ;K$*E[JQ<+9UQC+LZL<WUQFJ((46@' %G$C_#H8U;( :%HBL1;G-6KE9EL<
MUFA;!>;QYM-MMJS5*TFM)/6:DOI+CMI^>:=K7R:L$K5G(%*GR'R-S/XV(#_F
M-1[)0"#ILCM@(*&>W JY D>=%-==*0._!_TWGDVT20(FDU#%0-$N)96@I,9W
MMSPK7A9Q4/?#:D9;)9]!Q@$H(6I7.8@JV'H2H4HMWH:O*5;(JD&ABZ9=1UJ"
M!EZ)810R5WD&$D@FCU674@%6"=H+ M[O?)()Q EM/86=' ^C[E9 SR8%JH)S
M2$.)A'88J+O7++WB**>U,,G#V0W@$C9;B)W"[<FE:BBN&);G0A:VHHTAN+/I
M"@34:,<MW6EI5B(P*/: Y) _ZZNI_0Q,NO).?*DHQ$;FKE^T>$)6E+51"?^^
MUF+0>XNYZQVM'['TK]*,XM_99":/]F$G4-FJL/,*Y4I:*VG];*7U)U",T.I>
M)9:!FX1ZW?JEEBJZL"K(#10RU3=U(7:D*P?%)Q )*X12J0LI)!TF\,]*$NG-
MJW =^7 EFD&4""H"^#C>$[A8RZSR45B,579\]6U]A;B2FAR*AV'-N%ZNM2OD
M*F%6E,4(Q$+M!5YAD0^L<M#B88F N$]$/$5(K!83.Q44FQ45#Q86IYEP!H%^
ME'1DQC^DI5/,@G_RL*RM[2E<JTEUO2/C9'C%2^?C=Y8GV4QZ>)O7+=%K0/:D
M' U EM_AJVM]3ZZ19T&C0O0L6286!!$#_TQ!%17K%C/D]OZB)REZN7)4\9)5
MJIT&*D)4Z8V) $LN/JE4)E@PJ4&Y!MD4<'PP%?&&2(BEM-)(V]^"S$GPM[5+
MO 4?@:]C NBQRU)8Z:Y5=H^UTU:3:SV&K494QQN*;#*3:F@6Z_V]"Q7MF@G_
M=NT>7HF 6FF2KO?66=HQE%?+Q'OOVY6U) L?+96-%5UKRYAZJ<!<PY$<P@V0
MBWC?=5/T 6Q6"[_JDSKF)SYLI-O[KU\^?F%7_#T<Z1\G\-<@;RZXK2MF#H$=
M>+[XML\B2B!?UV/E!TAN(:HJJ?1G0_R9&VR=X@E/^A.PJ\]>O;-H)0R68;"_
MJRE ?10@$HY8#'L"\36Y97?%$DPMD6"_7>?U"R769<39$/50W3NH"DM7GXG?
M7U>[$L530])X2:"V_7V7#E[]O.;&NV M[/5O' 1,OFRSRV(J];D, OE0"E@Z
MWAPE-DL[RPG"+$'1*Y#U\7-Q0?S&M.N<QW]Y]>?+D_>?SBX^GEY\OCS[?/GM
MU3MQI:-LPTM$MB-BJ]#V4!X]9*5&V3Q/MWD: 3T(T/HZSKEP<VN7[$>KXD@]
M6\. (4M3U!5*]D/+40T!1:#Q*D5MH!!O2.DP;V[W?\[RI(B24%['H$B SB0U
M"0Q#<["',.H(VT=%IWI]Y;<29@E\)&]@X=U*2GY3:"7(1[SP9927"]\&.J[@
MX54N]5D.VAD7<<!4/-]>YM+]+R)^U5.@(Z%7*4FOQ0JH<=0[;N*$<TAA^7S(
MI.O5R_D5RYN8R9PG"+96VX01ASVA?H3O;?QOZ*'!):OG026<3:\S]-Q57[MG
M[UF1M.'4.;U5AE5^B 4G[%;$=P20OQ]_.Y:!D-D-SU%W1;\4D&;_5-O3 C&2
M<B2!RL:$S^YD;+56Z\!R37'-!&_U:<YE(/Y8^\J!YO_=&)P#2) T!U_':+:,
M"8%*5]G!*[9>S.(88[@8>&8_A+BL2+3:)<"79U.0]&6?6O'WE?L-=+TDBYH@
M2)4A4;3Y--,)0SS@?R1Y3)&>9AAFJZFYFW> 7>IFC7,/_HGPP-D(5NLZ!2>H
ML6;I\O"X^!E4VA4(:/,Y"MB&]!+71]XAURY$TG4Z E/_\:D/O<IDRYDNNZ[>
M70J1A"S!.JDGRQ'>E0@@J\/91'IBD)1:$^\&Z%.ZGV78#>E8Y%85@MP_=O$L
M+32PCSI^:L&+_"HI)H)B=*#U["IG4Z _[2;Y :\=P&Z=V*.C9(M$BD_U*C:+
MDEJ.-.D_(/18F5>! $'!55:--(_2CNE37H-,G$.*2*81S1>3[[R1@KM,J9&M
M'Q'%7SG:"=W4FB]YEF:8FM1M KF+_)IOG&N?,Y E!.5<ME:V33\)2MQ-N=Q1
M-Q>EMR-I?Z,QRRHLS 8OM)7GL6H?2^Q(92T^UEJTE;6HK,7]6HM,2Z*_O/KO
MWT\^7YY?GER>_\_9R></\.,G^1/ ]O\='9VDX766'QV]P\7_]-(MS$'S;_$R
MJC=B4R$\SR_/_JZY)\?[, 4'@%M [*MW72+0@ JTE@S.M _GWTX_77S[_>O9
M-^WD_<7OE]K?3[[^U]FE]O7\VW\=LE8XI$5\K&R:4Y$D']YI9S^D(J9]19/@
M:U+L,EW_'QAG2Z-9V,G6!R6NX&@M3N#N_&=6Y_,+=W9Y#0+XZAJ5=]0 ;K-\
M$MUBGGV;?-Z:CX/>:Z%$8!:^T"/0G =K>C+#G.I:XY4Y)S5:A(E>9;=A6+ !
MINN?'U)/^R] BU#:I=\Y&(BPK91CMIGXJ:/4S*?FZ9WPI[3D],9.KJ,1K=7U
MKQG8RZ+> (R;5!AVL/T. BL%_:1(4"N8!442)4S826@3X,:_ 7*OM?\",H$G
M;E$9QT]1K%VRY!8^B[+)A.7RXZ]_?R]6'MB_>!= S::8G"R_M 9D9S-,+5H&
MW'O,<2ZN 9.SM(VI</C.L7:>:BBBI0&!.42P]I6T>_%68F%K0@J5'TS4#/,%
MBSJ:]9\,%!8\XSN>[K*< GT4)2C'4YDLGJ3)#:8Y"FH =D3,U)Z(L.;:SI;J
ML!L0,BC-P$N5^HQ<U9!SP6Z0U4"YSN]Z'HOV2>$G02?+&PS-<WA=ZW&HJ;&H
M"C,0CD[V3&^9 5JHP7XKR11>+1+D:]<2L+$H# G9%'6,8^UOV2U* .&:*:3S
MHDT=$-GYD]X.68N8K,HK8!*@15J[JS-51=;F7>NDJPJ"X*7HIP,&G<YR8.&"
M+UM*V"32*U<%/>&U [M? 4.UA$"E $=XK(2=@_XXH=^C]RC30!%,O@MY(2)\
MN? 1"G(I,6N5U]4>@J3KI*H>R?2D7)UH5\4&NYF^S;;;A%C$1O<1--< &E25
M@)(SD20B$T?8BM,?1M@J]#14CE5#M3R0.(HRD7HVB"'AN=.**9?NBN^\X^>4
M#I#*/Y=FPMF1BXNARHJ3B3!YQC -.9&$5J)TGG5@3OE<MN_ MKL(6\F_5Y@V
M(QA#<K*N<81=5O+4U]%W7@>]N^]E$;!)@04@WZMDG+1RS4QF0K5FZ=WBX@W_
MWPY<OTR 4XIO5C)Y4&#/Y<4/($ X5"O!O^.2GVF>W& R >:T+VR_%?Q,7#L7
M89FA(\PBNJ@@JW?&HQ478O>R6'E%GEXGXCE8&_@D2/3!FU%?O-Z&2*H4(8PK
M?>[J.UFR#P:FQD_W$XF@Z"P]&KZ8:X(8YM7.U=V[L6];WYJL5*OD@SB269H+
M#S@7Q7A'POV'V1#PHM<..;8&M@Y&UD3>[%6A557%)S+$X+QRF1H&+_"/K?KI
MEF'%_=<@8/#<+:F=-.]*TD72$9&/6J_#NUGDB""M@0U8A3IPLR)Z4[U(5E:T
M1%<A?(%<Q)D*8AO8?DM^O?/HLEA'*K859")K!8F@ GJI=BOO3:2"SCN[A]PY
MT&L6=?))*K=H'1%;I,)[/8*[]**>XX7! 7W[,'=.5O)C4H-6'8K$IW"TB/IZ
M!#C(\ES4 ]8'@L?]# XEEI[_71](LS!>%G6QK51[)ZU=-A/*=<7/M=(Z84$F
M>19#F]><13)EM%>6)#Y!'2/#$@3,U4_@+JFCF+*J.$&(JGQ7'.=4BSBA!4I2
MF3<1E]1<#^F>K0U<!46%G) 4DV#9.?I=)G<R6TVFNF5UO%9292<>W1Q398>#
M6)UP(0'#5G "!JZE_B[T"Y8BB0XDN,V'>(N9*(R/9PA.#0%J(75@9@@ L?3
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
M88E'<8'ADY7<'OVUV\[B$\SY=VPVD(\(:''U=L;7"2AO!)1B5,LL%6-+<#@
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
M69J$A:X!;QS+%)[K; *RH?B//WLF<7_5N&B$H+Q@+\Z&%RD%%3'(;AC=S+3
ML0S;9R0*0AH%MA>PV##LF-L&*(+VEL<7Z\0T=&\TTRJ4WTOQS!H\$_N6[\6N
MX=MQ0 /B,M X0M=VS3"*W=#;[DPMW[5UPU!#M5ZBGPMGA,"'>3:98"IN D26
M\Z)4P[64U7<@5M]JJ?OW),URD+7G%6%WYQA2Q_<(LQP&,M=P0L8\VR*V'1C$
ML,-@N]$YR_9USQ_+-% U4TO)#R4_'B@_"".&SRS/,;A/>4P#TS6(:9FVY0;4
M'I(?&]39+,/0G<'JRQ<A/_:E[AW ?*U].F6&<39NR3IVF3DF:;AHPYZGX62&
M1_XER_$+)V69)\&L9,&$7V9]ZV) AEJAPTW&8M3 :& 9S*8.C2/?)LP'RW>[
M@[^(3CU#=^U1QPG'KU\I_E;\O8R_">',849L.:%!*?$#SV' ?Z$5.S$SW(%>
MC)N<%:^;K@U:TC/D[WWH/W0_[J[MCB 5Q>BC4ID>@.:1"%Z 6(NR&4B$\5M[
MKY]\RANY"PX)96M/J3Q)HY5!CB@B)*8L\"+B42-@0>"$U#<LGWFQ;43!EI4]
MEYBZ,5IE;WVV'[E*J.27DE^C0MG&Y!<S+>:#&NO;H,RRD( D8Y[O!]2.?)^N
MV2_H\?++-AW=-,?J\MNZ_)I3><5__@2?H"4B/T3:>=<FY5=X:7_UC7.-A9C'
MS]([C':F60G44V9X;L(R$^G^<9*R-$Q 3RRP\YX8N'B\^+:AA=I__:E/RH]K
MH-@[DR%N>-5N7 LGK "2>O_UR\<O[(J_SSG[XP3^:HXYG'"6B[.\;E1L4/KK
M%:M/ZO.LF.=/BVS9!2WD://AZ?57_SR["7@NEN]/LWL (D286_Q\RU$>(:T
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
M1=#9NR =>.ETW)9+E4O5%ZRK'A$21B2,2!@]J7+O8=)(Q\1=#&"U4I!-LLW
M,<FE=C6AIV42W&8+]HJ^]6Q%TJ89XI%U?,U?WY4KU>B<7ZR+>GW5Q6/Q?=_=
M7.]M>J[I"3ZEU,-04WMP]+5F[(S&L_*A8A 7+FR"*#A+L9<'(QR% 0[+@LJ%
MIIW=#S<7V_H<5S]]=_V1'KO6WL-H\.J*KKTPQ&E!Q9N/'W[^@+^F-Y.$_SJ<
MU$84%VPP3#AI>/'TT@TQ&Y]=W'%QY8(?%R3[[C8[+2\MI!J2J8QX_>[OSS_[
M-&EN__K:U,E'$,)>MI+Y/55!6MF^0'MX\:;ZA9?77KVNR*YW>KV\4]^@S25=
MSLJ5 U\O'6 N3_-G'/Z.7Z?+GIZ?3B<7[YZ3J<%KCS4%M@M,,W8EWQ?7V%]Z
MIXNE-S&8"TS/I7XKW"]>6MZL5S\^X)G^EK#<^?*AEE>U_" W>?(F:9^*M*M-
M6^S/8%98)2RN_8:3 8Z6;M?P4C.:JHKM>GV4JB*,O=-)E?E_.#E\\\O;XY^/
MCM^?O'U_\NG5ZY/&AS7.O:-Z<#03K/ F>9:A^@ 9LV#B]4B9ZQSKQ\-8GN?#
MWXY//AZ_?W?TJ=][]_[HEC#9S:I^^K>#@\-1.!U/#@ZN_W*T) XOB+K\^J=+
MN5AVHNT-;__[?##[6K:Q:@)7[Q[G^0LW[WUC"W='DG\6U$U[;T>Q' /'838N
M0JPG>;]7/37-G[*'HUA_$#M:\'58%35M,.K-3L?GT[*NZ?</.J6J,M.@**1A
M51]".0K_SZO:?K7\OM!+FM_GTJSY<;/GV#4A>GF8A#QKUOGJFDIQH6JL)Q+0
MVE;DQW48 IMJ6'+7_1[3^$.(!X8QMB :;X8B/FTJ%/%MU7RK+7 ZPC/+'+%Y
M3P%1>(\HO,'@:WL/RKW>YD<)7]T9V7LT_OQY/.I]FHW#OTC4;E$0=&3_#PL)
MJ@L,A[=V?Z<J 0[BP;L1<>3+X\B/:8:#43&^:/-?WN:?3!).SR=?:>]?WMX?
MAG#^^7Q8'4Z=.HO:9S;N6&F["KP15%X>5-Z/1P<=X\C+"AWBQY?'CR?C68L!
ML1<;3UZ.S;F8.\.?C4.97,G$&VUJY^?Q^6A&O$&\T:+6X-E@;T\V8H[-,L=;
MG(P*E>A8(>YH4SDHHD*LT<X:[[8XT8Z8YMDPS28Z"Q)[/!/V6&1;[B5O;- %
MLT@J%.R>Z3\/VL4U%B*T[N$;'.(HI![6E-J;N:=\1S7Y72PRZUA;+O.(-=W)
M:%NI'YW[P8[/9],9CBI\E^NT+ 9K912&,6!:6J<M%]SK.M+4MLU$Y+4ZZS\O
M4[OG(JC&IL:CFNE]^&4P_<]Y?E&C#/\]U8*0Z]5<8L7:4LWZ3'2ESGUOJDCW
M&,N;QLTNJD'W2&Y4_"X2LN<P?V)[=Z^=D)!8-C8!4\X:+J71SEDM@DJM4QR?
M+&Q6+637C)&D(4E#DF8?)0VW:)C.MN@S!I3,'@T$JT%RQ9T);#5)<Y4V6S-5
MWXT6@8)U2AVPT->F*^.A2?*0Y"')\\@1-@%44"H+"[7GA77@!68I<LHN1[V:
MY+E(C[Z(/JU3Y$AN^A:ZT@6=1 Z)'!(YCQ(Y27FO3=0\6 3IP*+*W&I6/3L^
M.[>:R+E(RF^6.[>QGB!U\N!+B@?_DR;C5Z\/2-20J"%1LX^B1CA$ED.&J#CP
MK'S.SGB-@4>E1=ODIP?955<U($W914N+L74J/(+UE>E*.S 20B2$2 @]SL1*
M6O'$+2N*#P2IT')@S 0?!==9P&I"J/VVZY0[W.B^->15)L%#@F<O!0_S07''
MBY3A'(P!F[@*$91A"@/DUJ:FZVNLW&>L*"[ZV?J&MY,0M/VLGU>OWZ?98B['
M;M)Y7M; &[/M:>FWBW([/%R'6&P?6>S;!]V'R3@/9K^,I]/E 8G O'=2V6*;
M@^#2(=AR3'$K/22FP[T=N+>2=M%%OR !BX#U#6!)EX5(5BH76#$_K4?'$CA,
M+J;D-#X56.O/,B"0$<CV#&39F*BR\^6LTF"L]39Y[I)VT;%@H66TUN- MLF
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
M20A]Y@B502L-*MG@+,0@R]\L<>>-Y9"#:NG0N^N:)Y"JKR40- F:SQN:BG'
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
MM_12VDD1T2U9(!GKZ\[4$] 93@#=$$"5"C+DP$7V'IB.&+@/F3NGP08M\QT
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
MUB=><<%Q_FOA@:;1X=E@AL-?$D[3L2\+Q_JY94=EEE9('4$DE2&C<&!\@*#
MUKXE)FVI'X#N:\$[Z)WLIK>1X$OP712=B,R%#E!D?@!(JL#710/>:F$3PPT5
MG=P.+]@^R"Z6J1%^";]=QB_HC$D'#S9&D%P[%V6V&K./!=-MO3TVTB= JSX
M(_QVJ%7 /G8%N-::;#8I;'\^^5K6-@[_VKU$W"_3MYL>@DT#[\$U=T78+GCM
M.!^-/W\>CSY5+EL>IPT\R^P8NIA >'3:VZP9%'M'9:Y;.K"LP[#I>CDNN?,(
MK!T$*^,:(@+++G$P3"-J%YLI>DH7 +?,\GH)M?,$5@+KEGN;/0BMB6'6(3#&
MI ",J9RH3FEE@O2@C)+;:F[V7'J2[[,YLU+R8E?MEZ-R93+PYXV5/A\S6%BK
M,O-D/!S6S(U!X>M)FJZKSS(E3ZT]>>H1TZ$&H_%D,/OZZ10GZ70\C&ERK5.R
MYAYMXCQY -#9H;8YVSIZ 8W.+2G<VS @]B(GC+A_[[D?A(P\*;"6>[ R>":9
M46@8H.32M7#_-C1RXG[B_FUPO\HZ*PFRJ'(:? :'7%A7#%-KP)?S8%L:+O2=
M:RLLW L<D)?\#B_YM3G6T\J!!QYKDC!.)CCZ-2UF5Y/#G,SZ)_K@EB3>N^GT
M'$<AU;&GA>.F_RC</KF<8'0XBLWE-Y4/B]5_ED;3)ECY88BC:7G;\+Q6Z36>
M@..S6U%,B'5*F2_Z@H$0F&/5>V<-)L8MM$4Q-Y)$Q/N.MXW=WCN' /GQ"/"=
M!KS5WD:;G</L( 7KK5<)K$Y)<IMC2P_+S:0=]058 CP!G@"_8<!G+ZWW,<E@
M/$@3O([22QY11,V4;.FYLA&#2/4-=#'-<.<E#"NXX5L[+W37:JH=^:9I-ANF
MRT*'ZHB?#,*L6$Y-CE$/?\=)[)AK_@XR[]YG<W]7EDYX=1ZRS#N"F\WHUL(W
MGZ[8YCA_O&2:1M0=-BRS).F\"\602=RDJ&H;?PLQAXS(M-<@\[8FI,L^:VW,
MO4-^:>W4TB[>OB?($>0>##FP"4.P,IJ$X"+X.N:<L>BEX5':K0TX[$O6ED]
MD"/(/3?(80"N>;'6A7:@ B^(8T'6R:(Z6^76.(3B'LB!:2O[VTO([3K>04Z$
MO74B=(Y,Y*<B%B,6ZRSMB,6ZY'SKC,-MHQ,PVMJ7=2!)8>V&1W>-C4T;&)L.
M9:S6:/GG"[YK']:;,8IBQ,B4$+0$:Y32042L17Z,X[8'5IB^D5TLI'Z$6;-I
M-NA =P22&B];:D1FG4L>!>,*6+0(T3+GHO7.H\&6XN -CY"P?7"2Q :)#1(;
M'18;PD6?+7+I. =PV2JN&!<V>V]T]BW3L38[U4':OK9=S(?8([%!7ML],.3)
MWT$N-6*Q+I")6(Q8K#LL1E[;&]K.VYQ3F&='IB_AM%:3]28X2[WYS^6%4>/5
M[<]]N^F_SP>%+C5GH-_#45Q.J:QO().+3*YUI:K/6?,XOUWPY<?"EL>C:H35
M_]]><>)5[DI]X7 4KU]8>N=RVJ9@Q@CI('D+PD87=7 A<RNYC\[$+:5MBCX7
M>S-EKUM'.0%];X!^CV]ELTC7V2<=;30Q&F#2.Z-TSCX8G9S(JL4)LUG?K>AK
M2Q$?<MV2>'D6XH6#LPB P@D)W@KTN?Q1!(?E$4"ML?7'P\0+Z#[C76QSMT?R
MA7R\>V#VDW>$''#$8ET@$[$8L5AW6&P+AW=GW;DU"7<P"G621JHYN'OENJ41
M1%OVL#[)!/J0)H-Q?+=@MK^F^=^7?4&6C:VY ;:<A&N+R92<#=(F4,;[G+-"
M)Q+S/F'84*O<6Z:2<WUINM@ K%/G*<'RI< 2,4K' X!$#[8.P'%,JCH"QTD%
M>8V>TF\GMQK7!]7%/EV$2\+E#G"I0\HN"!=#TI!,=I8)+KQ$3%PRMZWNPB#Z
M1G0Q>[13M@$Y]KJP)#*)B<6(Q8C%B,4Z3J:.'=Y[E;QY]'#O7@]G/9_*,D:U
M('^<>U\33G;O\J,LB_W)LMB@<;1<:9OK@'-ED#L%2@1T3A4+ACM?C)[(6QH'
MK]'SH!CO6TWYF 1E@O+3H9RR0\FL\B(B&"-MS;:6!=12&@;2M[D3U]</5X@^
ML"YZ*PC*!.5]@S+W E1RB!PEB"R=$ H]AVC1" VM'LCUU4@8M_\IT^2-)#N>
M['AB,6(Q8C%BL:Z2J5N']W-Q/*9RN3,N1TJ;V%,;1&O#,,>4%7C(,M@H5/2(
M0AKE/&O)3EICJJ!F=79@%SON=>I0)'#M*;B*N6Z]1K!<:E!1>!EE4 8!'*_#
MK%ZHVYW 1>!Z.KB8-A"8E )9G6Z=?!#>)_">H7"V?5[5"W"$=W?2Y89LEK4-
MS]K-^G9MAJYO=M:^DF_]YQ&Q)+$DL63':$HLN0].O$Z.T%ZGE^^7-)W^N?=V
M5%=\JUK83WZ\L6Z:HMV!=(9MSA?]MO%TW3!:KC+DTBNG43L.D(RR(5B=O(DV
M @;;4OR[UGZ+IK6R<(<,L9U\( +6LP>6Y YCUH!,9Y#*H8C(K6%!.R%9Y!OU
MX8F^,OL[?YZ 1<"Z&UC**\M"8%K)" Z4U]Q;*Y,I#ZV5V:S_[JZBV_T%%GGS
MR$XE.Y5<)\22G2,?L22Q9,?(UV'%XJ8>!%WVYATUR7BC>"MM;R,9>ANSBJ#C
M5E$<G_MA6BSSCYVTB*XM\?X,B,/1S=2&P]D13B9?R[;\!P[/T[)O+QDK !3/
MP$!KL-D:D9BTWF:G4&W4MZ><[8/MN!,"]LL)07#K--RBT4FZ@)HK0"Y<LL%+
MFUB2"0QK<4RLT>,'SO6%:YLT0' CN#U'N FK%(=@E?0%7AJ=2LG+P"7CPB?=
M<KJM,X^/WU4%N[]P(T\@V;ADXY+;A5BR<^0CEB26[!CYJ#CW08Z^3^=G9\/T
MN=P*A[TXF(;A>'H^2=6_5_3&@\;]-QC-=<VB0/Z92G)W4-BTH\IWJF>C;:=M
MIVTG0[PK.ARIF%TB'UD]Q)(=(Q^Q)+%DQ\BWQX;X-:N;VS6:W8<A3,YQ.*U1
MG-[99'Q6EOVUWSL;XFC6Y-W4E)NS:I87BLUZ7].L=X:#N*E"NOW4T._<R35M
MTA_72MP];6IR-ICA\.V7LS2*@]GY)$W?C<+Y9)+BF_/9^_'LGVGVH3#F<B-O
M9X1Q2GFG!?@D?6:1\Z 8^)B<-&UI!AL8UZGZ@E.3(,(N8?<1V#5<FECK C-D
M$-%;YKDWW&45I1?0TMAK,S,];5\S B^!E\#["/ *QGQVVBHN.7@3O(U>BB!]
M,BEB: 'O1@9_RK[0^STF>PMF2(N]5/E),.CWA+3E#Z6^_\LU\^QNAKP9'+SQ
MUOO>7'FL:=4Q2;FL!VM"7$XQ37#8&XQ^2]-98X?,\$LO%/8;S&[M91?,D%4H
MVIF.TO>N](^]FZ;?UB7B*LMNEW'%RO5_ON"ZCY=,]_.<Y]Y=LMP)?CEJ&&ZY
M]6A@FD>..C. Z+F+F)CV06BEN$MN:]8%X[?[^ZYUDS;'6NVB<(/((!#O,X@7
M!%X[E)-4=2HYCT5=*<:&1">]T4R"#,S[-D?!.HR-//B2XL'_I,GXU>N#VVH*
M 9@ 3 !^(( -<U:F5$[C",BBUQB,,5E*GG3B:3,&QPL&\ W#I/GKNW*E[MC\
MXC?C&:^6J+-0V.__T-H2#5/J80CCS^4!:[E,C6N4#\W&E4F:MCM8;9 \&.$H
M#(KI,9V5"Y7UIC_<7&SK<US]]-WU1WKL6GL/H\&KVQ0/PX23ABM.+X-'Q?*[
M^-[%E8ORESEA>F&(T\+P;SY^^/D#_IK>3!+^Z[#\<6G%W;4]H= F36Y_P_OS
MSSY-YE_Q4^6G%0C1Q+J:WW]/5015)BT0'%Z\J7[AY;57K^NLBWJGU\L[=7WE
M9V5E![X^W 'FLNX_X_!W_#J]@P!+)NQ/IY/KMFM3.-1C3?'0 G>,795X+:ZQ
MO_1.%TMO.@Y=1"7GA5^M <N+EY:W\=6/;<]T8\E_2UCN?"DWEE>U_" W>?(F
M:9^*M*M-6^Q/]2 -PN+:;S@9X&CI=@TOS28XFE;Q6J^/4I41V#N=5)'\AY/#
M-[^\/?[YZ/C]R=OW)Y]>O3YI? /CW#NJ<KT@\Z<?\29YEJ'Z !FS8.+U2)GK
M'.O'PUB?Y]\.#@Y'X70\.3AX_>%OQR<?C]^_._K4[[U[?W1+LG1@B0_\Y?V%
M^#Q:%I\_7XK/3Y?BLVQH<V1?O'3URLT[W]C-W1'DGP6 T]I,MCS2<9B-BSSK
M25X.SV+$]V]>D4W _,9%L:,'N8Z\5Z__-!CU9J?C\VE9X[3?2U]".IOUIJ<X
M*<?AYR)^9M/O.WJ\]18:8SE/TF00;CBH/Y7/#W)1AD:SPW*LEP<IA_J'PHAA
MD*8GY19OAN/PK[FV6'_]3_!>",A6(G.0L[8A<H'@60X<56BIA[WEN4E%(SRK
M>S@Y7RB7@]%YBH>SBUO$@-Q89U.(P'WVL7R'MMPQZ;+TL3I1YP2^=2Q>TU4J
MM9>/LPLM<T&)Q=:4:XLE-*412T]Z[S)66+M8K'W#BEHK'-\?G[SM\=Y![],_
M_O[WPX__[!W_W/OT[M_?O_OYW='A^Y/>X='1\3_>G[Q[_^^]#\>_O#MZ]_;3
M,N66J?14VHE5:"<?NN\MV[[.Q<M5%@\/7/RRY;-XCMZF'@16>1#5D5U0JRQ>
M[Q)^.%N49+TYGPY&:3IM3KPW.!U,Z]4/DS2M!5R5#)LBFEZ%:*8C.VY66;S=
MX8[W.H1UNPKQW'IW?D?;<$'AE6GG5M)2V+V<MP[=M/6)_UI4K,G@K'G*)7ES
MS_8LZZ^K:T5L)6(]6*?;L(SA*VEU7'3P=.<K*5F\*UH67TG-XG #=7$P/1OB
MUS]?N$7J!EPL^>'EV_S**?.X[*!OTW#N'?YP.IY-QJ-!*);ENU'XH?>G__T'
M*\3R"\T%_I=^;_'*[#3UCN9.V)LO_9YN7AF?3RXOC2<75\\OOO3[7M4_1HUF
M4K_W]_%D&.MKW/QE6HB!S2R8\H3G&4-582957;GTAYV519;GG_ZKK/[WTT$X
M[56C^+3(HX.S20J#:=WUYDV_3O"LO*'WW^<XF?U/7<JOU0%7T^6K$Z1N-@Y&
MS<T&83*>AO%9>??@,_Z:&@4I#5.8TZ,7!I-P/IA-?^A]N+Q]<U_L_2M]K>]L
MDET:JSTMK[U^S[NCN>;U\X>_+N97UT^>3U/Y85K>/)W51YR->W.O6II<W*YW
MAK/RVFAZ^?!ER>/>-)7UCD?Q/,S*,_V.N7Y\<8/>]-Q/R_?4!XSGD_IP=449
M?;% \4) #XK%_.ND<?U</%E96*_Z^M+L:WU'76O]SGY=%Y9=F4[+N@J+EL<L
MNUJ^<]*;?3U;)E2-<#3+&)\UT8Y>]=J7?:ZN^-[)%0/UFGRTT6SXM7=:GO\;
M ::Y2_HX__V2GN5Y?L8P& YF@W1M;K-@SKO@K$,$,,Y"U!Z<,BK:@*HEIO3-
M_ Y8CBF]>__S95")70LJ'4Q3J$D>A8-C4:5?O2Z$^"V-;B=X?%Y^@+(9%T_0
M[PW'H=F&PCDG./B]@/=/:R%(# R22FB$DH @46K@4@1M&.2$\EZ"_.>EO^_?
MTP62<'CX93#]SY/_]PUJL3MHU9+Q=XM.W_>_^^Z[2UX_.AV,<$WDD!$-.&3"
M2 E*".=!0="Z4"@'FUKF 3V<'$?OUT*.VTT.O^_W_N]XDM9% R\BLN"4B@D!
MA4?EM+6UOYQQ++9-F'@X#?[OQ[70@+?1H,B:2Y[X1[E'04NSD.F:Z,*D8&"M
MYEI9*.*CCL_5#(S4/KO GT27?WS:&%0:4?OVO!:!K8D026;!LW08,!:0)!>D
MR$6 "F&M-."?0HCY0O^>ZEHV!9<?MJKMKN3,XEWQ9O&5W%G\IC]KM]INE_P=
M?"57%^^*KXNOY.SB-[U=';)^[LBH4:I)IKG(J-E(1/VV\^1:&L1#0^IS:VU9
M<ZX%O\W)5_1F[$V+(*^!]>9B52RGZ=?&#&E>73:@JI)^M]W4N[*;UF@J-37*
MQ<BY/+L7QM$-4^3=T:7I=V$C_5"LTB;I9Q)Q%(J!.)B=]@X_'?6$98TUR?E?
M+JS*%MC<"*5^6A#E8SH;3RJ9%DBZ-%%OV+;-4L+I(.4ERL8+ GW&?Q5R5KO%
MIU3Q5;YZD =S4Z[YIN:3;[^D<#X;_)9ZQSD/0II4FH][D_3;(/T^O?KB2^),
MTO1\.&NLP'J+RQL6JOCQ>=G286,I+*:D%@L[I#G!RBX5VZQ>+]_9G)B59)7V
M=35U=9/+Q_NAK&LP;;[DU_-!0]P+7B@FN<=JD99G;'BG[.R<E\[.)F,L[V@,
MSSDI)Q>D[/?2M*:1#::G93F36GT^F><(U+?/WU8^-9P7BEQ\?*DQW.7S-XR7
M)L4FK ]U]6$<%5$V+)?KD\R^UC2=M-1P[H(\98W5')Z3I%BJOQ6:%S[_C/]5
M"!'.IX7SBY$\UYDJ79K(<S%VIY4KYQ2X(%>Q?T_'PU@-\[*@FA-12;SXZOFJ
MZJ,6.^\\_= [' ZOWGC%+U7!F=:'&@[RUV8W\-=?)^G7.=L7F90FEX^^X.1;
M?+I@T&+&I\8Y<)H&DX+Y(H#PZIF:79L_]?R51JGKU72G5% [_EP1>8I51RIK
M+'L?IG\IVN&%:Z*5;G]I?BLO%4.]V<W^#0.VOESVH!#0GS</5-];/00%NI\&
ME?]F;4*KD+JZ?19LT*\\?4F$JP2^)>ZXX*C8\U_O)5,H<L!7SB_4O9 UJV<.
MS@_;#JD7*\53^)H#*JLO?Z60AK@9TGCQZL43M(E>"[MN+-UBI:",N"K]:D\>
M:D+7QWDY<'TXBH].*1(^:XX0F8H2?'0H:E$80RZREHKA&E**7#:0%)9_C2X_
M<._*<[/HO926,_0/#C]]=\=N+:45K7_W5LLT$O/=:[_G0PFRON!E6S#D6MCR
M[NCFM6^Y(U]BY0/BX1^IJD&U ![R9^-@O_=@:U3^HNV?X63N<RZ?J$*B*CV-
MEHV7 "IO*R?YX&Q8R/QK&M6RCJJ<A9J(F"X/V.O^N$*DPX8G\3*D](\?/OW0
M^_?#PP\7P9]Y*&#Y/@NDS@,BY7A>K*]^?U%M[GR,>OMI$0]%/;NDU^QT/$UM
M7_0 T@RJ&C,HFEH=4':5<UG4^MA$M_WE4Y=;S'6)\N8+11OC^#+\/2I<6;YX
M%'$2&U.M:*C#P:BJ,6DX_OV'_3Y'KG/HI6CZ]GFR?AFU4K!9/#C8?)?<7>LS
MK!1Q%EW,[!,K>4.%NN? OTI2+ZMICO2O;0>ZYM&Y(*,W/H%5S@I,+"4;@S"@
M):SA0#=2Y)"45M%9X. 0P%GK$G<8I=2FVP?Z2LY>H;]UH-]/D!6HN+MLY?8T
M_ ]79^"\?.6*&[<HZE;R+ OSE-UKE:[W?6AMF3SK)^%*WFUAGT+"5N%^WX<V
M(MO73\Z5G!'"/86<K0?,?1]:6[1M_21<R2$BV5-(J-;E35FM=NB:^^61-:9W
MB_T'%)JN$G6YVW;<K?9]<M.K^1##)@S/8[ITB-;BL<:>O9$&V"_GWI4IU:L!
MBVKRC7^OEDM-*QO$04T0*V^_=)I??4>-(-2U#&*JMF6]63&G/N/D:[%Z1BD7
M&Z_\?.6!;USSU:-_^_LO0A*S!B&3\?#*(7O=]EC55N[JYM9@0DW-FRSVM^=Q
M6(,T<_=\\_YYKL.T=XJ_I7D(*@T'G\NVSRX-^BL=Y8=V6^T19.MUG&+OQZ,%
MCPPK&!KBI>G<FK_&4I,T;$@T&R_S;.6]R?1T<+;TR:54TUZ3]UC8M3S[-S)L
M/I0-JXZA7]-Q/K[XQG>++WPW^K2TCJ5LFP#"Z92S\-*!S\PJGS(PU,4V24FW
M>"%;$A75<O*,N$R>.1#W)5JQVT,^_U?C5IE'N.;QS&]1]Y939<&KO>EI2A<9
MGQ=1S?E8J.7ONJ3\$K&OOO\T#9N8S[*(&J59DS&,7_JW%UI>^U.1<^//Z?L>
MSN:!J:;JO.SWZ#%/L20WFSS9^I4_[,K)(5=RH\O'V:*]SH)[2;-]8+7/-Y2C
M!U!M%5I?%6(L:T_M*]Q&UX_]Z/L!K7T_[NG\T7MHZX]KS3]NM/=H>GK<IOQ=
MS4%6[ 5RJ_W']4>[UNGCCJX@UQ[G);0 N5X0UMH2Y GH7JT 7-[CG_S'M!SY
M;Z>S04T!F2YY)+,QS!LN#+/%"(O6><;!<@;EBK9I'1Y)+865*&,4"0 Y1VXC
M<]9@%C$Q91];X?;=,M4W[I*4*_F^)7S+_KV?(BN0L2,NR94.T$O.;.R'P^GT
M_',3I+J[,'/]^[Q28$"JI^QS*];O^]##G9?+KW=<,5K_=JX429#?C"3<OS,K
M;&>[([4CB;V[]=[*E>()\IOQA/NW8X4]?+CW]D5#<J78AOQF;..A.[.)O+P-
M'*=K]@V?G%XDT5QFL=_A>%U@_&:6S?]G[UV;W+:Q=>'O^14\/GO.L:O4'5[
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
MGVXXRS__! RGF:WG\";%]]UM_NE[&/&SI3C^\ W>.#@';(!OM '!01O@&FV
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
MVZPEIW5^)WH;L:9PN/7NFA(-GK[@?6ZCWF9+ >&O)W5MO93'HIF,F 4_ZRL
M)11M*%L#K)(?#5%)(Y*(9O*QM]R MQ;\.,[YED-^T1>9W=,%A8?=G*FI])4C
M*THV[1. S?E>=[T*FLYU.P+-;7"F[O/B<ZM7P!TG7247T" A#DBA[MST&2J%
M8%*0*;(("_J&:7 4SH9W+7_,UH5U>>A.IC+U$Z/=F$'-7><7 6SD<E5[B=3F
MKV<LK3^P3OEI$:>4$DY328P#+U>^*EO;+R2"]%,)<5SS">><=L,%(;RZO18$
MN:&"#?YO+40MBLP4:W9F7> )Y]2F1 8)H8C"Z(]*?#[( J]FJ)1UFZ,Y=;00
M;XO(1!XVMBAE,I0JF]O<P+)JH&2LY7PE)34N\X4H@>!LFF8;_?,VF0M  /C3
M^%/*92Y;8-1R7@+#P!3$FEH,,'"#P&E>2JZ@G$0+.A>_<%GY138SW/![:8YN
M;DHHP&GWL\B32K@+-^]@T<MO_06YE:[F:<:E6B\?<Y&:*3F@[HGZ,M'"H;G
MN4R_%5^ F[$>3.L;1QS#K3U+-B^Z+N4D=[:+#S<;2NBM LA5D5_XH"\#3NR,
MJT28OP%_[9Y:?4$)UDW8+9ZG$HY!=X/D5YI@O^SQX4Z16>@$#89.QE58 [UW
MPIEWR"QT@@9#)^/T,"#B$X'C069.9#28WC9.&P."3CB]#9GYL-%@>MLX/4P\
ML_;T;=J7#>)=P@7YS% _!IL1KNR"B@M+*Z]9(<K<BXQ5T(27,E']SM=SN](J
M=9,8U\"$<Y5XM<C^&P#4?UVQ)J%;_G'!5',IF8^G.O?.U'?$_8NE&26B4,HP
M:S^\#91>W1;YZN:67X4W>96IU8CYU[;#C\(8TV&T6;\&T)"-YJ(J0=@*H@<8
MMRY;BC5_;Z55:CE!>7^W)JX(HJ:O].TOT$7L#O\[%QV31RT]K2LJC"5^9T-
M,?O:M%O;L#)%&R[""E",^#A5G3&KX04V.JWEJ?!/M+0J+-#WP*11QHJNE9B)
MCY1V#F\6<6;0*KN&K@[,UCS1($1572))\LBV;&)QU6;#LRX@ A"G*/%<5H0H
M?XQX'^R7@#EHULB5=TF)ZJ$&<U)OD%.7I23W LFQS.=?&#UG/!*9!;_0((KP
M#@+-1 P>DI5W:C*:A:?08>$IH_B4LQZ@FN!M,O'R F06Z$('!;KZ44A&1YT\
MU 4LLA6(XQ!XCZ<$XA%N!_'HA>@8A_:X@'A<0#S:DL-(X!P4%.X'#!H=M=[9
M\J3Y#WV[O%^;^5?:H_BR*:FM__:;TL^RQ^XB#UMIQ $'1;'[L6-&1TTXCHW,
MXMC^07'L?CB7T5$G*0PZ/DE],Q>I?Y"+M!]Q9734A)VDOIF3U#_(2=J/N3(Z
MZ@D4* \F4>#U.-*Z1Z(WL"@#)JVQ@-3(Z):0I.BIO82PR'<Z@-CV3XC@>3L;
M(R^LA/%W-=D F>B5MY$GWO.&S2 _:?6A%]@4RKNE?%TB9"0S#\H2$LG!#<2I
M>MU<?:HF5:6";,GD5B$J.0,1_FK'RKLQ>^%)T1G:PI,&/CV9]UVT8L_@AP$_
MR@/?%Q&PZSH,(0+?:EB^UEAOP[4D\C\6(H3:4*0W%#ZR_3IRW$3;A:.GQYL%
MDU[/$>B$UO3C&\;HD'Q99%R/SV2V1)G)2'G7 ]6@F?3W>+S2E.7_I2N5"P*F
M0ZF >6'^'9=L:Y_D.E6*0F<?9._Y_F@SN.6@_21A8EMJ$JM@WQJ+/I<..1$=
MK0LWU@+$+]9K$EA[97HY C6%[\\<,HZ2AS:?O%O(\+_VV#:43C"G:S< O0#2
MKV^%]-_J/\X;;=!Z3IE*XE$>P!>"-JG(,H&DG%9P?U5 ^78_#[3:9\H2DE;-
M2;MY29OEJ<PR@-1OZYZ)H]1BCFX4EV;44EGJ;PKE\.RFJ;^<S_-[H.";O/@U
M7R45YXZ7ZJT?ZI?^L\@J]BY-RQ:8L(,(3@AS4N1AY,5AXA$64\9P3+C.$Z'-
MI'6W3EKW9-+Z:I')3_^TH<R4,L)Y?\Y-R"M^P9<$P[41;,($+U9W]U CQ!9U
M#O[15V=[@9O@.'9\XB-$4>)BW[%#QT,.PR@)=DC)/_GJ7C4==K3@ANX&#3+>
M;YR96FL*;!2@F'@,,.I#WXE8@ E-*<((.ICTE%:??\?V71-RP]!GB9>2R$6$
M!IA1WW<H<1W*O+H9]:GW:9'K&@B]K)\-_E I.")+IDETA1'D\"C.;6K=ZFMP
M(>4!_Q*L\)PA!-\L&NT?%(WN![<;'37A>+1O%H_V#XI']\/;C=9<V$_$-#4+
M;OD'!;?ZP;I&1TTXN.6;!;?\@X);_7!=HZ/.6GVU@_>QMJ?@#CLG)JUO%J/R
M#RO&,HI1N1,NQ_+-/._^09[W?N2MT5%/I"#+-W-E^P>YLOLQID9'3=B5[9NY
MLH.#7-G](%>CHYY 4=:FPW")'U2M4%F*;"Z1MI,5]$J6%LE,9WS#='JY3GF2
M'^A<<E&600#==4NM@4R!OK;^*[^'Q*)9*^,ZT74$,DV[F0JX/7KSF.IOBTFL
MU\E(#QN?HL" $UY O@.BJ8Y.IEOD,DT)7@/%+UG927.3\!--HI98Y3WDLTO
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
M,L9K]-=EI4LAZAZ-&E.WV375SGX=3%] =2B0AX>Z6@*NJ*_0R:24D/^N1%(
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
MU>^8^66=P5S*<6(;[-"$O3#]6;SCPP9]CN/T,"#B$_'"]&?;C@\;] V.T\:
MH!/VPO1GVXX/&_0-CM/#@(A/)I=R:]71L0M?C2+UYZJ.Y9H>MVQ'&+X%6<6X
M02M@.F48O)0E@.+/=2V6R%"<64"Z?%764%RM,K&;YI8$7#$(L$,;C\83IA^5
MRS2_&]ED)"]4>P^AG%;XJT4*1K.JO%:E=W_O>ZZ$&JIS* 44+)2OL0X&D8S1
M%V(  %C\8#UW7FPV(1&M(1^:<M6"S=D7+!Q^"XG-+!, GKMR<&L:,+Y% YG9
M"82CUULFWG+\%2R[2U:%J,%,LZ\U/J^&0BUG,F,5E_5797F;(AW,J46[E%%1
M[)LM('=7?+%%SEF=QEI0Z;B$OBK0Y2R3\$YJY6)R8A[/ :BJSA9>R&]#MBT@
MB$%[S:P#(5MG*-?EN3JIHJ<Z5RYT6S+S-8#>02];F=([G\_J<74^;2^[\0V
MRL]2=),1Y8[6<W9]<VW1%9-(KHLKU8A9UPDV&2+-;K]0@-.2G1:YZ)/+BA9C
M=6N4:Q:K)RCXJL4-W6ET(+^YD%F"#Y<?MIM5)BJG7TB"B^?5^!\".T\6<\K\
M9/ 7-_XHN:,J%5G58:\652L?5T$PR]3LNH"R'J"_M7:TNMG.F0+0:^.9X 56
MP(2<@G4V. ;DYRWD>Y!$@U,@T-8DFG3?3M2$O(-2\9?\DP*<<+G(W=$5HM#]
MMBY?[LY>N_D:OI%LKDI/9Q*N_$%7:#^"$F 6SW(&XUGC][F!$A!.7PFX7/_R
M^N^Y^X_MK-HWZ7&;MZH?VN7LI] L(.H,!D3'#Y3!*7P"*>N74Y@=[82U>R+J
M8S&DU^_V@MV%P2%G6^O86"-0"/@(KJUVH<EJ T3DS;;4.J7E)@\6RP06FE!
M=863#,;+"_V[EBX&>#'/L[8V(95:8=40O 2GNM15J2SO>J$M'QGR%OHNG_"<
M@MIQ/)KW^?1WWX?=:6Z$!B3T[-%\@*?&@,,@*VVDF 9J6QJ[6WF4X 7 ]D*'
MF*HJLF2E3#G=[%)S8(NE9A(<^%ZS5$L[!6 7P=ER&C.%(]-"47EB[%=#]BC
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
MR-T."!?#,;;].' 0#M.8N0&B08H]EZ'(V]UBV-=8^.E_7%V]__ NS>:L<4,
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
MNQ+BJ0,O(>M&5==8W8]-X& U[8,D170GVG6^TNU8&P0+_I 6!5I9QPJ5+<W
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
M2OCJLLC_#9MQ+=ZF-W 7ON^SD;LW7^?/PS!%^]T#YP=D^:Y>0F<Y]=H'\3F
M^1957CS\FI5DGI>KHA>1@U\TS$V=U(EIC+ 718F7AIZ=)':8VACU=&W:&Y$#
M89\D*4ZPZZ?(=5@2!IAZ- GY/8=\0LZ)U8*L*^OM'_]X_<>G=Q_>OAZ$:-$4
M[K^\QQ=E0(D>F)9!/MV\CG>$;*F90XF?K8 M!(<L JZ(O0CY41QS)HF"U,<.
M_]EV>UO_[ OE$^'4\X@O&H?8;A0'+M>H AR$ <&!XP\"MHQ3U& ;U@%;CA$
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
MBB=W57$!!4/_,X8Q!$J\B_:IFTS?A&E.[U[W)V8PFLS&E3$!6B.B/6!$"$N
M!T(31KD0"#'II*U@XKUC HBEEB/JH<.>*&PE@19Y@XA4/.QP",X#C6H&YQ3'
MFLFBH[7R%'K]T>/V8=:8V_)YY;%*$%7Y(MY_N'J3L.1I\O'U/U[]9_+O']Z]
MOTK^^>;]U>^?WFRIVE:;2*@.D7!3#%"Q_DU.#M>9'&EH<HM1>.D\M]7>JSU1
M4F>B]$)6L;+PX;:;V!&C.FKPPB:U9^OSJK>6=\/DWU4@YO@N00"*7O+Q>C0=
MCX9],UEXW7J\6@R"7(BL>QI(H-)^QFL^#SO(\D<%FI$8B3APT["G/<WC+Y8"
M]=83.(UWK SF2[Z-QO;^>:#"]YF]856KB5-'E/:2XJ^?\G<$E6PT3KEQ'F48
M]+O^?)RES_-'S3\O^"E<&?2'+OE?2?\FAEL%V@1R#$9J.@]"[!72_VYHGO62
MZ748W)?KI#^=A F,!H.[9/1MZ.S610N25EKB_)F? S54>+%+/EZ]>9;\=O7Z
M63*9Z4G?]@-GS#6L'Z^#@M$?I@&JO: #3J_[PS"2?F"TT=0E__J7H#^ OWUS
MZ0_P;[WBROT+YY_L,,[\YGR,L^W\F-\2'E_,:S0NAC":C?,/?^JE[MO7[S^N
MIV)I\L4#PO>3%Y.^2CX&WO%!"0N4ZB6_3>VS^9S2 X)P<W\X'24J^>]1^&%.
MNZ_ATR )0?>W;AQYSES',20C/57]^$HU1\ #=XR-UD^ULO@A3'H\N>[??G3C
M>,ZAOKBRK]%38ZCDUF)#'/#:4V0A$![ 8 *!U:0E*$"N+,:?,$Q[=\9SGQB0
MF+ZQ[R9I4\_JX01N^C@.9L[X[J4;ND#LN!!5G3YIV7@B<]OI*=I624,^DZO]
M)_ZZB_#T\Y$F*>N[#B3;!)+)J]%-6(^[*)*0_VV.;^]>)7HV"3=/)G'=_K,?
M9&+82UX%_%+/"KF[NG9S:4UEMY#97BZN,1PV?T$R=CY(3 RN59,YS$6%>XX&
MW\('@4\"=_<GUUD<KG5?W6!TF^)/$-^9#XP7,>$VX&.0Y\F?D\BVR<3=](-$
MV9F9CL:39\E5Z;T+&)-"[\)0XUO<, U<+(\V7#7A1Q= ^B:BO//>!9X/H[E+
MWQB_&ZPE<ZU*B#4?U0+M4IIE$!J>JE/YG&;E?M.(9&O[<175(!8##JAK F#%
M+_>'7P,UTC#CZ;6:IMAW.QY][5LW63_J41CH.#ST:\QYLD_##2:.8^K,]3"P
MR9?L2[-Q8F:3,-BP)#O(\+.YJGE4C;.RTO.VF_B%J-.5]8NWW20NT"BJK%J\
M[29Y(:M8F2*VU2,"6F45!0L& 11D.X!3 #D=X"DE0E1/D\$H: 1Y'?*8PS#7
MMO1=YA\I&SR%7ICXV<#W!X,(VM>N/RYCUTBGVW5XP217Y2)B9:Z6F&2A8JI$
MSIKJR]BY]*X?]U9WXU-?%/?OKOGF=__T+.BJ<>,,L#A)=XM,0P_VW:#OPM"_
MA4TD^1+V_3Q#)+YNF58NU<5BA?>E_)'>8OW/]+?T@;>J;R-DY_DC.1E\/ZIE
MR9U3X[A2.-L[HBF1[I&;]=7?1L,O5VY\\]KIV,SBE;J-*5QI]NN'^Z4H5VAC
MSD#E# .6$&F90A)AA0#  GH%U_4V6Z^BIFM;O\W\TXDS40&-.M7$#9\\'XY6
M%,^P5=X$MHQ$MV&>L4Y^*5(I)=KZK)M#_9N5V55;[VK,>WMDA*M.Y]EZ%[K
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
M?7[R/&VQ$=L?1$=\;(7PZ\]JF3QET=C8;J?E,OV\J&J_L1?):Z>G]\UR8@>
MY>XCSELL&&00 T P$XHJ1@&*Y005Y8UTR>':4B4-E@0BPH57W$O-8;CB&?;A
M86?KDG/X\KR/779$\C1Y_>;EU<:V.LOK5UJ^ZE8-V\E6@]85[7;F8UNS_S:]
MK3Z9L^XALZ_L.K/M)CS7%:O%Y;.Y=G8V<!]\%)RU'7L$\D$[E!!P'V0&"H&X
M5DA3*J5'$%=XU_>6F7 # 1X[2 @F6D#MJ0O*J#90 DN@69:9??KGK \^@?<0
MO9\/*6TZ4RI+G\29]M(V,KFRG=R.QND*AR\.1D'!#'OL3="7]32-?HW?_&WQ
M<MY_9I)\<^.LO\VX/W$V/L#WAVEKFBP1)E&3<,?$C/LZ?)RVQ?EE\21NC6"N
M9?A#&+.R8<RVF\BFGBW;>:$& Z%6,5"R?KUV,1$.6S%29\7H(2M6"5[;;EIN
MF=4$$I>MR[I=?XYD:.W8VZ=D6R[\NN2N+WVMACMDR>$1%/;\2&AQQ!763S$+
M0=>%/JR.\C@^DA5+:ZEY1S6&+W607![GDD?B,"I7]_/(Z(<."+JJ-ZJ;OK4#
MM_/:[]D\9G6=JYCG6'KOD^=OLQUTS;J><V19,E:C#+>[(^R8++ARJ'A_N0FL
M*OBU!#A[\5RCAXH?Q_VAZ=^J06)G[I>3H,?]*AT=$Q;E^I 7[.VBO3PFW/7X
MOJ+S]/GX]WUX< )1<A,^N3X>&.UV#H8.(V)CTE"+67?</FM,Y31ZT^H9VR&+
MW\AYV\71<//Y7#3[KX+5'UTN_U#3V3@]H_OD;M5=+*\R^>#GN\F[813,JV]N
M\-7](Q7-<G("QI)B%DPTZXE22#.F);7(&>*1IFS-N?X?\;WOAI/I>!9?]^)[
M?_)'KAVEJL@_7#RN:"B%@?<DW^'TORE\V5E*Z\/+A>U&Y]M2,GY-($[^]2\"
M0?BWI*(+:%,+O_/&<M[=X9$"^H5C\'\Y-;[Z-BJ'3U"K)3;0:XX(<5 K "VA
MGCJO#)"N#=#;1MB]+.QLN]*>(RRB<X3%[/P(>QE:^FG'V%1F_\/3;U-LO1X[
M5X[[!Q2#@*,4<$FH!C%R56- D.&*@^(DM$/76DQ]81A\=G3%?(ZN,1O[W.C:
M)OWUY(CX +#N[6@V+D&=QI()2 &$4!*$N$#,<:<H0=H) EIAP[<0Z2X+PR[2
M(YS#'Y%S^&/@_/#7^85;H9AV_MD%3.]_+:NO!#+--+3,,$DL5A)#R2D' =YM
M^&Q=DYHC8KKO?W?VZ?]SX]&3YT];".>/QAM;.=/S8?QB &)+T?TB</LR$+G=
M6/MB:%^IVY@CD>+=!QTFF]6++8&K@H8QCAPC'!$M9<!9 2SG !@AC6N#YW67
MZM]-B=9A$'OAX$DN0(V^&DUC4% [X74/ K8*A&.^69Y\>R$:9PL.X2Z?B)NW
MDHCP<3N)^DS82CY?C\;3^/.KT8WN#YU]<1.F5,Z!EEHP"YASRBH"&%:$>"&
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
M&!I;&7JXWG=43B6(SJ/R(7_\LZYVS65/_-*'OWMAYFB'EX,!(&,"<!U4.$Z
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
M3H (#/509>6_#A&.A AM]]*?<LA'Q(YSU  5 A.I)>/!>/(":N$\5AQ(%6#
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
MD9#)"KB(;0[.#^<N$GJZ8_,6<OP);5BR12[[407P-@-JE6C= P_B3/WPEJQ
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
MV'31JL.@+$#_[JGQ^(?AC)^OA_9M%D1T.6>_&YK!0[ #WPV#,,D.IH,=:LM
M,VDF;JHD %+:.\.!AIP3XY#D&'*-&/(("TDJJZMWE !4>>V0]D(X1Y3C"E*+
MI:;A/DH@@QH[,JHB^54LN2UC'5C.3)F)1-6Y04QL/'O:JG]]_/\I(95.&%QX
M8J2E\-N<F*)?MJ++_8S$YCO;[QHPKL]HE1&<31>M#19OIM$:A(V>D6I;IM9G
MKNPNMM$:C5-V94A\TT5K(^);$>EV9;:+E:_;^D-K*669"DYJW>Q;'KR06U)5
MV5(WB6F?*JF%Q*H5GG ^R7JB9L$L?!UI)1Z59VN]E-Q5D0)5O2:E[*E:-4R[
MU$%O'@1JP2;-U9'MNTVE:K:J!+QC#"&K/9X[B"J)W&8H9IG&3TA#'2$_7T+&
MSX60JU)2]U1C17GF 1GG$.S0X*BWW[PC"YP7N&Z'I.\#FEH+!Q$+%NU\H[]/
M'_Y(\@:\6<(<A+\FLPA2D@>.5O7]ZVBLX\WGR)M[]^8\A.,T?\"TP.%5*>!.
M.&$HH=H(1C1@&E#.O;&,$&6 U%O<0A.C.40R_)$$:*8IP!([1[$3G$H1[*FL
MS8G*Y,=,3.3_.9Z)4]1K-575<V2"WWET*TEM=S6Q7%-W"$>E@=JZ1F>]OFYN
M_CST4QSO!_]'ZC(E62Z34Q0"H1 T1!+JF21* 8(]CR4U&%7TF&H07(#VP#8M
M1]I)P@=3CIU0Z(3":86"H5P!BZ&@"!,AL-"![1'#G'HEN:C K&^PHI_UH-@"
MA+J=)-PZR^]D NE4HN:0L<JUW'XRV=HJ/=1M>_NV_<7XF'M&C(H\HP/&BUZP
M:7<B]GP.B]<N"?\<5K0CQ^=EX[8O;BDX8%IYH(D"A#$KG4=:2$^EYH@#M\4M
M.*/&4F X98Y0&ZYTT@ =_#)DG0;@XM7'<<QNG#SVDON!BC@"0YM$Z(+[6&W5
MBQ@;[8]FGLY@?%[!AB.&$<KYV*N#")(!(H @5@-*$#-22<P,L!Q!#:Q>U?RX
MF2 "1CTD<0NC"*U2Y1WO/5/>T]9@Q0PE0DIBL%<:*$>9]#"H'F7!00-XF/8@
MVZ+I9(MYKUT><V?H=X9^RPW]CAP[<FP1.3X#OW.76&9F#22_E[HA'C,)[LQ,
MS^Z<X$5Z'-VVGX>QV[Y07A@X ]08!; E5DL-PCMHJ,/":4VV">41QI U$D)O
M$4&&2L\%(\1QPSB$,07QVICQ@[/EEK;MC]T]!ZOBN<4B6IYT-,/N?_TP'KMA
M.6A!!*(& &F!% 1Q+R3Q!%@!H:646GC0@"'L2=3&F$7GJ'52X45+!0 %9)1K
MBJD*\L J0:E4FE-IA::L0BHTV5VH)^$6S<_:2</M,P&W:#W9"HO/(T<(X0Y:
MZPGG3EA! ,=:<@@,LG*+6RA@/-<(*ZI=4%-(:<4#*8-@[4%)N)H6G9R7O5>]
M@:<2Y-LU*CI=R&W+\9U:YKX?#<V2V)5"&,F4PIYY@F7LK"(L#1X+\4)@X@][
M>ML#F+=0[!X5,*'CT(Y#UW&HP-@KBC6FFA)-J-(,6&VT8%Y:92M;UC3&H:2'
MH'A^''I".ZCMA\%;COG'UZ_?O'G[MNTRYZ5Z@6U=G%IBL20,N;)<<T.9$9(
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
M-?BF'M,5*U"RP?Y\.YZ!1N9H"H6PR1$>E]<\D.C]]_S;,M)6<EM,!960(0M
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
M\U@*%Z\8^///\4FOGG9A[=K,UN4^?'*IXT>7RH?9_)*HP3?UF)95ZI]OQS/
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
MWS5M,L%H+XRL)4*O5697.YCVX+Q3@:)X"HOJ)4J,76PGK&/1H]4"0T6@)=)
M:)&QF&K+4%6%]MXBI:85A>35F0N4+L"VBF_^.[/YNP!9%R#;3"L_G4K(YD1:
M898A@I5DW%MC8FXG4L)8R!RB7!KF046KV%.9992"'F!;@&&TWQ<]-)G]J9-&
M;0O*M<6F;,^"M$(2[F)N<J$-PP !221Q!FC@G2#84^J1P;ZIZL4F@G;\BI/G
M("A/:(E6'4ZWU@9]'?$>!H.3F:&5BW4RD;]5R[D3&J,UQO=L#=.WH[%W_6K;
M5$*B*-284H>)YE2)(&LA01QSI*C;7 UPO&-<)'N,;P&A>A0&J)E7\URMTE8)
MI\V#>3&6: N6XK1"+P*8[&* .BTU%EPX#3 1C"B/E28,"JX]"E^UQP!%\*JJ
M(^ Y2<,6F9ZD&CBF]9'1_5(/R6E3#W?=A)98N]/<[:(OVA%&W8@1O,^PGZN6
M6)W5"&5$2V*$:JR(0EX#334%()B@P&M4$;0]LCG<(PCW&%B&@CN \=&(4MA
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
M&SH?C.2_]--HCP6'HRI8"(U$U@EFK=;$(2PD<!@P* *'.2LKTJ9W#A82:XU
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
M938,XB >FBT(OZ6W9BL!?B2?>]$&< H$F02(<D$X<-*%S5THC;G'!E-].!M
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
M3F@[H=U):('0EB&D'9&<(*.5\( HR[4&5#NN&U529$\0\EQE=A_])1U]VZH
MTW9NCI(F*/$D3J7F)ND/QVKX)49(E+0'JV<E2B9S>/MHPR .8BMML:I;VDT[
M L'[88 "X[)LMNP!#'YV7]U@M H'G'FGC94<2TTT=D(!8Z!C1)NP6Z,2FZ7&
M/1SU."J+X3S><M>_17?"<#K"$)18@["A"FE)O*3"&.R0\$@;C)WS=>Z-OO^G
ML^?_=NGH[,WYJ<K @;>\\I2W$[7I?W4J<\E@H0I-R[?CW:E_?,3:(NWU<!.H
M:'_L-8-RK+P;*+T.E#E'S@K\W"_:#)XA@KGBU'/B$!:>0PJ@0 A*AGFSAC[I
M05@6LW5$IMI1$-JK5'0B_5)%6FO,L2!:QGZ#%AK!K.$2*^6-1HS4JNJLB33M
M<8)?BD@?).*A.\'<^;W/XP3SO]-1MM1%ABH'*98>64(@43H8]D&^.3)<4 .;
M/?5GJ ?P:1]"=D+S H6&(PHX))C1( Y26H6\$-!H@ '1S#3K$V>X!W@;G>*M
MVN*.:OK768;F?TO:#;7@!/^0AL!)*O]'5/B;1L_O=H3/.0M?S#AX 4LA1-@P
M)"Q$B"@ A9'>6VL CJX"W6Q5" QZ#)=9%L?&TGK,BZ89X?L.B#H@>BY A AS
MF@-BJ42$,JTX(P1;8*SV&#'0J%*'48]!V0%10T#4^50Z\[ Y\_"#6XKJIAQY
M9:CW)$ * T(#YS#Q3(H8^5C2E[=.A0;VL&PCCG0>E4YD'A49P85#EB"!O2 "
M<4&\P<X":SD+<E12/Z7.K1?T"*4G+3*'\*><G.NDM+#N]D5]2TKP+@5?-%!N
MMPO+/E)8=NO(U*[M\K1HU[%8FP+5GT,._J>KWV>UUAL*N>N4V58ILX_XE59#
M9A9ZVWV*@[SROV<NUV\7S4$(@-)$,P4HP=0J!ZU1)%SD&AC5;$D?WL.TC46/
MV^DEZH3UI0LK1AP)@@WT3A(*J0:8>.6 %H8)K9LN-@AE&\^BVBFL^R@EVZ82
M+"D:N9ZQ5X1!7C:JB]\]F9.SEL3O;G_*M8!QJR7*D&.:.:<5$8(8S262P#AK
M*->QSF"SQ^RP1ZAXCO&[WW?2W$GS$:29  0MM@!IZHEQ2N%@6D ,I<5,!,6E
MX<I!")05TGANTGP(KWK9P(_GYSO$:.H#BA9'Q;0F].5]?GBQ#":+T?](>828
ML,)2XA00E",GN<#4 ,!9LXT+1$^ -AY5[] G\]A&4 <*'2C4#@K*4"4!HLYX
M1K23REMK*>?"!'4#*-QPQ1_<2B?("8'",?06<I+9%:4A K%!IRTY_)]UVVT=
M(&^D?;NPVHXF>N#VX)B:Q*@5#?S:3:(=@[H6MI/E^"[-%&/>. V8)5 KK036
MCF&KC446->M\0JA'91L+/^XHQRV+">E0J$.ATT(A;H#V,;<LZ+;$<:R$1]9S
MP9RTRNMFLW81[ '6QE3WYE#H(&%#703Y84#B:/C=JEVO6_;V+?LAS-T#6;:B
MSKC%/>/?WPV"P=OW@2S3=D/3</<6QC^V4NGLHI.[ /B.Q5I-IG9M,2T.@"\N
MQ,'\F/3'823FD?RHMKA(CZ>FO0!W05L,_ODI5EE&*0944(&E)102A95BECA)
M%*%:8*$:+E./>X"V\62[59MJ)Z0O74@!%LQAP;G5A' .=1!733&BQ%#D04F9
MZ'H=<DCRDQ;28QSTGFX%_7(U)H^L7$[L/K;VTI6TZDI:50GA6:FI 3T+D*HI
M!)Q@@[3"CC"(K(92>MFL!D18&]6?YU'+JD.@#H%. H&XMD :()61D@ IM8,^
MJ'D(..D1)\T6U$.XC25]G@<"'4/O)*U*C&AB-#5&M+P($[<5=*@K-D40*KFE
MV$K+B:1((DJYHP+$7JNX#"M?;(1<JYQ8'3)TR-!P[*P$V'*#L-::0$H$"'#
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
M4'1=?/OIXR\?U1?W-G7JCXOPSWP=S" H\3FQ;^:V0[!39MU?BBLS@A>F0$'
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
MB&!0H_!_'2PTKU#XN6NQJLJV&3N%<.4NL;63ZI.0:H(,5-8QB00E&&L9_N"
M>.<I M[C@_DQVW@TT$EU)]4G*=4<(F@EQHYJ0VS8GH%2CF)H*>4$P)(SOV;\
MJ!@\/ZD^0/!!76[5FAAW2H6/HW'@LKX:#.X??*9+L8XM,%U.RI!NI[^AA2='
M1;[1VO'1A?W7)!M'\%LZ0R(FF"4!\@0GS#*AH%)4$D.]X4X=+-ZAE79*YSCL
M!/E4!-EA) @4@BC)")!&0F(58\!CPZ3"+]LTZ02Y$^13$63MH2*<""DI)DXX
M%42*2@T8PH[@LC+W+\@::>LYR\927TUX&CJ_QQ'\'D<B6N=<ZYBL8[*.R5X\
MDQUK\WY^R=;GA5K: D?DS@1OJ\"WTUK::]0MM*>N_&,6U8(=9;71 #M$I(:$
M02#") WAWB@DJ/(E19::\6RB'I:PA:;4CC)W GI AQ@=8NR#& 9B1; '%&E+
M*" 2,X< <Y@AC"DO\;PTE:7&:1N/0SK$Z!"C0XQ%Q #06>6XMHQYXAE47#D/
MC,5(2$;AP7RUL =%&S/PFD., YB!70+NH=#C!,JY=<O>+7NW["]EV??97=+1
MMTUDVBF"\:?XM-F3<M7F6ZZOQ"D.['\NM."9-]KY\:<?XDUOJFWX)1-H53##
MAO$=.[!AB_7?/\BAU>2K'U\[ENQ8LF/)EM&T8\EG%+#4VC/,#VZ<3/MK)&HA
MNR=,(/EX,QJGHV'?9%.UYR;H0R[-DO/DQ5=];-JAUH(N,L?V&L[4[H\NG26:
M+5>2!!XBR[DG'!)EJ93$"FDPYXQ3[$I:&#]Y_H@7?8-H[AH$&UR#Z#5$+70,
M=A9X)Z;M$%.)A2?20"R%)D@!Z;W3X5\F@$22DQT/_2J+*6CCB5\GIIV8MD-,
MG0K_TT1X00UQ"F@M(&'&4F^\$:PDO>G)D[:*8@I?RS:F-[7*DCC%0,E*1D9[
MPB?;&,5PQ-/^%L!IBZ,=5I%VO3TE\0!;Y 1G5! JC"1$,2F$@TXC -VA+!?0
MQI"&DXEWZD"A X4Z08%:X)0#RF(3%"^A@XG$ ,,0@0 2>M?@R.J@@#M0Z$"A
M X56@()DFE,IL)(>$^NU%-XXPS&FC%D@2GR<#5EEY+F"PHK!EO]X%:Y$\^3-
MJWS6D<3]X405TUZ]\FK&.[-G_+3RC7PYK\,,_RDA,(H[[!A!A"NGN*%4.8&%
M E893:?K&6YT]F*\Y4TLL''^^I]T^L-\#-/5>62T*[P^<"K-*7PS-P&#T3EK
M!%9<F8683CD[,0.5!29Z^^GC+Q_5%_<V=>J/B_#/@DP]9GZ:8'&Z=/T9T[C@
MZ4/6@W*VD[N\5O)2$,\P<O9@]J7XP/FULS>,%Y$\!;U*QWX7QG:NXP3/E0\C
M_S%1@V_J/GN$"DNH\M--.GM,$<%=,#"(D;HEE,][L4\_G;$Z ('9;XKIY!&^
M,W:?!H&72D+QT=D/3TYM\15KL_F;4V' R]-9N+>4ROOBYL/Z%4O5'P>N,<6U
MKRKMJ^'"ZW*V&J=JF$4 B]>'+L*N2F[2B'E_N;YX^^OEU2_OKCY<7WZX_GSV
MYCKW.XQ\\BX"YW"<_?2#6B?1TM^+?RW^_FHF[.&M@7==VC<K /_9W#@[&;@K
M?Q%$<%:F[O.\L\?EGV8PL<[^DHYNWXUN[R;C7$BO_.K.$('@[6!D_CA[ !/
MO8/,&V,P)EQP;1%QU%K-6-@K!-O"BG1A [B+TIE.7!GT&.@5T09HR"AA7@A#
M%,=4!DV5" $9G.YPU<".50$[7H#=C EM/[L;J/L?9PL?(7"&?=M[OZ8EUFO:
M\Z]O7#+U;FDW&'U+,C?.XOXZODG&X:.%#LS)M]7\X>S10NSA7C4.-Z0N<077
M)#ZP3?[,L$^:R6!*_Y$OV-9.M8G$K84OAH$9-<E<O+>?AN>YU/3#GW>!@_/'
M.Q<?'Y\\&U@ IS_<.&[EDUQZ\K<N=98.,\ROAK?T1S89I;V@>@3\2-3=79#@
MV>#R[XP#3F:3]#XL3^#IY-:-;T:V%S^ZGTXQ *)+O\4Q61<0][8_C.,9A8$G
M:D&27C]L>8]N>#/%I9#0-W.I+>?:S2Q?04[0/G+"J\B)6%<*GJ90B4I3F49[
M33<?^51^C!M$3=$$[LV5U/AWD?$R_7NZ7QD_SK]_5D%?6.AUN@0/I5BPM%LN
M:8PS3;(&3W]Y 8Y&[*9#E",!3\]VGT+()3IE/1B^K$ 64>#_"#B:7 9$:^Y
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
MKW]^O1$L8[+,<=\!60=D'9 ]7R##0",D! 3,6Z*]5EHZQ+7B1F,K7$GKZYJ
MK"E]C.-.'ZL!QAHPTE=(%.WTUAKC*X<Q=>=*795$013A#]-@B-)$BF/L.\?:
M7)KT^%6M='+PQG=/A7Z\=0$)W2>7'QGW?9AGWK3E@QM?^>6P$$*AHH@S(8TD
MW#B%-5#$H6"Y"L)!2;&_E;"0[<&^. ::G0(]6-_O\\XF_>&7CZ,TM\O'X[2O
M)_DI]_6H/#YQQQWBZ8VAQW!;U-NF'.J=?+=/OC>H9C4)..1>*(DLUH88*Y0E
MG@/-):&4&2EJ%/#'!EQ%OILS946=C:Z;%?5CZWD=K)PBK!P"52 " C@D@\8@
MB%-<>8JD<!@C;0S!FX.R-Z'*R/2/KQ90(D\&*XYUF%IZ]GN")ZQ',.J60]O5
M GO'G,3A$H.';TTYO+PSS%&\CKLN_=%<D1N[$C4[Z%I;KU<8=8OUV-G6L@/$
M+^Q"EG.DF??2:46815H**8&UGF&CN"[I]5&_\7KH78GU(,<MV95V!("7J_%V
M4-E!Y9ZZ^7Y(B2T%A&&N'1!$2J.A\I!@)3"3!E-S "_ <:U^W!9-OG[,/*!#
ML,.Q#L>.J_(YH+S[_^R];7?CN)$V_'U^!6_/3M)]5G83(/C6T^ES;+<]X\1M
M>VU/DGV^Y( @:#$MDPHIM=O[ZY\"2$J41+U3$B5C-CMC42()%*HNU(4"JI !
MB$ 1\7S=X0QY6*0D, A@5D6NX.47'G;@TC4F+GUX+MT6%D%44&:3L+BS2:11
M4Z\:=C7L:M@;-^R[6&*?DKZT\4OLTP\QU7N8O?:TT$VE,WGBXJ5:O6EW;&?[
M;?='1.MLR26^;A#.*4;<)_ _3R1 M4S'I('K$9-/2>S<R/-19LMT[(;RGCD*
MLP>\1V'FW@""PLR-8J9/[(#8U""^[Q&.7)?C %/;]77FXB PUL;,[9_'LHT%
MBF0KX%3 J8!3 >?*P FH2;A+/%D>-4"^X^H6,2SD8FHX&%<<#J@).#?C;UHM
M S4U#+C_L#FV$B+_,RQ>LH5,DY6Y,>?=1-;)-&FNDFG2VF4VSK6Z:ZD<F5%M
M.3*K,D)-YG):*N72D9;$+P4>;"H%X8+M7B!Q5G5C]6DI,/-D1\MUH:)E&TEK
MM8S@-[5DW+ 4F%O0Q565;%:FMCD:4]0%F4QJ.5'!>_ETDE4E16:DJZRH&3Y:
M*:3>5X]DI,Q>,[_/C4@Z5Z\J5B%@DV"ZBL(4[5S#8N;J1YZ0LE(SE!J\&37(
MDT\>AAIL([Q[4)%<K#(@J0Q(AY,!B6).,9-TVB/,1)1:CH%\X@"CM@*.JXK
M-#3<ZMHM6V5Q:W* 0&&8PK -8)AN6D9@L\!ER"2FBQUDF-BP MT!9"-FL#:&
M[2 =I;5 >7$%9 K(%) =$)"9W+(81I;KNYA0BARL^R1 CJ4[KL&PM3$@VXP_
MYK2(J6"LF2=\QD2DTE&J=)2-/RNQ:3/<1EXIFQNFR#2,?=LAKADX01  U@:&
M;6'3-RM2IX\573V =)1FRT)F0^8%=1;J[=CW5M)1NKIIN,SE+K5=L:#F&KKG
M(<,PN$? Y"NVE*ULX/N1CK(IN7R:[^8I5-E'5-D&J'#7149@>=P'0FCKQ*4Z
M\S$.C, TF>U4KM(O!2H-R$8IO(*F[/G?GZ.R*AOE:IQ.9:/<F/&HU$1-G7#6
MRTR$L6=1CU&#&RZQ;--AV'$-U[ "3V>F1[9!73<P*2WFQ9(6,IJ25UUE6%,P
MMO\PMK,,:[;#?>K9'@\<8.BVY;DFA6L!-VW;0[4NP6T[5>1,",.'BU\'RMP5
M5BJLW*G+1XG)3<,(B&UC@C!R3(L%." ,8<Q=6I%88/EUAUVZ=*@IVP6WX])M
M88%"Q4LV"5E[ECM.#;L:=C7L;V78=['\?7B9(HV&4 V5O&=_M\+NCXC6VBU+
M+!-91#=UC(BI>Q2Y>B HBN5Q'0?K%V_?8J9(IZ63IF;(W__,/0HS]P80%&9N
M%#,-W<(^IP'W=4:H[=* (,]WG<#W;&P:%=EU:UKQWN!1J<:<^53 J8!3 6=S
M1;3>T2QJ4N2YIF-;A"'J<(?[+M)MPW!MSUO?V=QNIDBG93>V(M/^P^;82HC\
MSPJ9(G\JFC^29F8BJ^)/Y;]^&NUP#?D'JV1V]#EO7*9 -_UGGH1LS)[.XTBD
MXTEDC^[#]-N7,&6=..TG7&1C/.N N1T-DS/Z#C--BW",N$4LG5$#O!)D4^+J
MR')->V[ALR.-@QUTA1HF?5Z5N5)W=8:)K?N.3@DU3-<D)B4^IIQZR YTE&>N
MG*[.M2A013K!H\\WMX\7&G*T8^W^ZN%O#]KIS1?M_/;F_.+F\?[T\>KVYJ$Z
MG>90_)\'0U*=_7)^[U<0&5XBV>>:[<.KM,\8&U(_3+L=^BK$QD5@5;2Z:/#B
MJX/(J7$M\#*,:,1"VM'"* 75E0GHM%Z;]K1NW(,/\%7G54O[WK\YZ\$77!/S
M!(U>Q;Y5EG _[,'$G'[3NDD(#^K*GX.HTC#M:7&@@0GZ7*., 9S"DQ/.>/A=
M[GNED9^C2MJ.D]YQCR?/&J-I&YKRG>>Y\$ZTQ](K4Y$8M=R(/_WL8&3_FL+;
M8[_/>N(/F&42$(!H7\J?0VB+^"9.Q NUR[LO&LBB'\"L UB0I/ R[30-:4N[
M@4:TM5.ISO!1_/JBG\1=/MH&CW="#NW+A"3:PLI8(_I<%@L\OJJ]F5B&TDAS
M482ID'7:HX7DG\->^"3F:,U[K7Q2'#W%8M-P_E(.LV.NW" 3QM-4]B3A8BWI
M.Q=C*:0M]*?#,T]$"'Y,T'X,'8SBGO;$(Y[(AB0<G(B$RQNA/7!1"Y(81JR?
MPLP)DAQ] @P@]"M,VUPT0(-'Q"]RU1E\@Z*M8C,T?.W1%+K7!]\D%X(8G#@1
MDDCD+"RZ)P5=DBN(.>V"2Q$ ] ^:T-+:H':Q&, .B)A'?IH-9"RW9(=1YIA
MIT\V!125>9+GW42:#Q234W_MHB.KB,YLONAN^TF&:T(3Y1_"E,!.)=92L"F?
M=^,T%$8.<)$"NDCK&H'FL->7!W1:XBA!=E9FY#H8$Y,P\1+VVJ$T. F_;9X;
ME03@).02\<"-9>T1-"^!(H!H.P:#HNDW,.I\\TXJGI:W4SXB%><9LC>D?+0I
MSQ3L_P?CT!KQ"OHL7BU^"[_J)UGLZ3L-.W(:$'B0]J$U@X=GL#KVT!- Z?SR
M\(<@NC) ^9P_RV<*+(&?/0^G&"%Z\?,V[T@D;8/_H_VG#QK0>VW!K=W\,,:H
MJ,L"DG.:H&?BZK.873R12?DYC 2M*6/3*! &_42"3P'D:?FG:0;,0E!Q);I/
MUQOH1 I\C4I-D *4N C"AL]4 ]HE GMQ4$PL95ENRH(K4[;/NVF9E.TE:C++
M^W]@;>[W85:]#4:(P&T@J,#9J_CWI9QDJL@ L%/3"@S0)HL3SPI<R_.Q9SD>
MX[['JNGV:!7D"?9Q]GK&(]8&S^1;P;VE/W0_<  *JCV/1@3<-4W;!UU'#O%M
M[!)"3&)@AG1J&9Z/9N6@GS\4*XR?O08"C^#M6/K3@GIGBSJK,AWY,$'58>+O
MY->^@X-(Q6M'KA:<J+@H&]@383CA-8CKLC_"MH-8N#/2+9&H 7:8YHXS?.")
M&'SZQ--1!-8FK#OBO6K7>.Q\V,#!R9S._!9 #0&>SS'@&EP7CEQ4O#U_,]S<
M W#RBHA_T:+!%?#/H V^P*63/*WLG(()]7$^>Q5M<V;I]P+&\5/M2S*3RQ:#
M1:"Z3Q9J(VLQ@W67;&%LH=(1M2_-#,QSL5(1I6(157MTMI"<O][T_(M$!S:5
M?W_>8N1X(O[I^CA2:F+=Q:32GJ**\ZM;:H0L>UN9PK_B1.VRP[61Q-F;T".E
MN7NIN<:A:>[$[LP:L3^?=VQKF63O]4_-Y[F+IIW6/E#;2@VZX^2@=8/>!E)V
MKA??FG>4:H(UW@V8!"I%@RVNFX[ANUAW D*9[1 <@(^,#=NQ2>!4)'FJC9Y6
MW?GXVN7RIL(")GZ3W_N5_CM.BA^E([><5@6:S7*@>1AG/L9SXLO(/5D@E<MF
MT7,CR3_7U;Y?%#(I9-HD,@'1MAT#8]\V+6)SFUJ$(L9]9#+B>)8S_\3F'B(3
M7AR9%CD$KW"I4@A;\B"WYR:>[0Z,=X>X.X35IF.G3LP ZX0S@U@$.\QS73_
M"-LX8(ZST:##IK#SK%:OCIPLD,Y]:^C90(A4:/%VT,(T@?QYAA_X!B;4P!3;
M#A;5J1%QD(T62".TAVBQA*>U2&Z-MXP5$^Y4L5MXL%%X<&-=Q=/G!_96B :Z
MS=_]L_C&J7)@LL-I(I6I/3@(#KYJL6Z<7RG69K,W%3&WL_N[RSO B[.$TV^G
M\*^YX<BB2O'X$V[D'I+L$9.521>3@C.QSCT2=!\-SXL#5:-%EBM:WH66'7NB
M<\<T@'9_U&CGA;ZF4R10LJY/[:1X2!ZBR*U4%XO;%3*7YP&R;\OA3:V==T4N
MBH\'0BN(5?[5T8<9W:J,GQ8]^9U3:&ZY*^,0,2[==;77&=]!$?9 6]BT'113
M-DM\HEH[$5C^\^/IV?7%[>7Y[<WCQ<WCP]'G1QFOC@/M7,Q4LNPU'1=/Z5/Y
M[TUO '*(;00LL(. N019CH-U!]N$$,8MQ[4K#RHNZ8L_P#P&4^MW#G!WPWN+
M[O[QW #[>N"9MNL22CA%INMYU.0&P]PQZ5J[?]R5CBWH>P#!*^S9F=BKDV2#
MM<;>G%RK*W?H%$_W^TFQVSGA7;'U$C[!'6'LIR=;VYF#])548:;V+:"Z;WQO
MSOB>F6UMUEE_;TZYZ/<6]NF47.>J5U>%YI?:&;%.B_3%I5'5SOFUX^?7B/]?
ML2_Y H#4'_A2FQ!M7?L'=K!G8 -ZN,(.G*7$L4@S\$:VY;SIK3@;V$16H35;
M-"NESF]9G3>PLVR?U+EA#<,K-$QI_?):CP]-Z[<0#9<9+P]@/^6<@:IE!].6
ML6F+C:I]!U,38VF(!(:%#(-9)J&F3VWJ6YY%L>L09.!@4ZM]>[%E:9%:N=L#
MSC6V+S4J'J] 28'2;%"RJ>ZZALLI\FQB.MRS;!*X#K<"P@.=L!H"_'L,2@MD
M#U.@U$!0:@2UVW5+ZX:O*4VM!8:X[C+#Q,0 S"',-FF ?*0SR_((!E2R)F$(
M#6 ('SP,5?E&S=?A7W;$)O=F;W5=0+@[8-LA4#71F0HP"2S;TP,+86(%CAL
MLV..XS#D4(2]?6-X]6Z5K/NP7%W ]G8\)@44#0$*[E)NZ]3%K@T(09 7(,0#
MPT0ZALNZOV^LJ]E[JA50+$VM&L:?FD:2-LB$ M]V,7.)87"?$&!"'B>>XP!$
M8,]@507HF\V$ZH6&JH.M#='&VNG.HMN[%@VD#6C+^628<C,[MQJPOKS6WK(=
M-;#^=>=Z\H'X+K*)X;L$(,GGMD.YXR/D8&8&HC39OK&;\SJ1R:T+F#:OL(OB
ME\( A0'C&""JHU/J&0$*;.+I.K5M9AC,<)EE.AZI.+'2;.)2*P8@0X' ?L5T
M=B;GIL/%)AD."ZCM$N0RAEUBZ89CN3K%'GRR,1">BI!SLQE.K1A26ZBG.1 R
MP8/R/W9X!ARM5 8(X3TX@KCY\AEHI1I%: ^*%/V#:W&7@^W+#.942\/HJ5,^
M()GR)U$M*/NV7-Y''+(<%K-HY74O9"$(40"BFX!]IT+*_^G3I/=_6IQH3^(4
MGM;M9*4:H"TTC. =N3$\ARR)4Q9W0Z8!,N3G1;DHI9/$D:A%$R:L+XI3B..?
M?5G$0I[F#*@GRM(4)8*NSM.B'M&L<YWKJL1*U6C0096CV>:1TEE'TJ_CZ.DZ
M_ [CD*:\EYZ]_L;C)X!FT$B182&5Y^&K3J/;.G,]V_8-R_>)ZQN.9UN!P5UN
MZP2QH"(HL71MNL!EG/B,<(,'Q#(-U[?@V:[M4&HY-B)K'2M'*]7U09LL[+.\
MOIW.JIS0JCPPWH$!/^Z($0=<$D,N#5Z6?,@^OO"$MT0=EZ>!)@AH$K7'TN)X
MNJC[Q3OQR_22+95'OV>!QOS!7D%#\%H:LE+=&&0U2D.JSG\O[#*M,U[KB5X*
M<:G:$5-/EZ^)JV^U@$29$6PRX=G\H^753;%V?GA,DP=Q&YO_?EL#J-1G=?4Q
M#D5]-KE9<W<HN,6:*,^A[W?X_A8IN1ZZE;L[5)MQF.;:U&$4TUD">G>ME3=
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
M&:8^?+ ]ZNBVLQ&84]RSEA6G1F.36DA32+1<FE;3\BV& N2X+M&1X3K8\G
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
MK=6$GP&X(6(DK"V^> 7H ']W\*Z#8\.WD7;:?^K#[(T=Z5"1UK3EA]*"&4@
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
M6P<+._GZ]>KQ\>+B0;01V*!V=@M3;O[.;,D^%.N;+$ZZ<9)O&<^DD>]+\62
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
M/E[[N97S[@I/76YJ6U\<54B[_E.;W-2E#7?]EM>D<3MH^?21W"/ V$:08K"
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
ME7/6--.(_1DK65:--C."NNNV?.8;-HAY>R;SZO!)"95VMPME"P3DX?SWMT!
MZA1;V4=_I#_B*'Y^U2Y^]'B4BN72!];FSW1 1W;DO+^%-3WEN6_<<Z\-'I3G
M?F!ZICSWYGKN-7MA4R<8Y;,KGUWY[%OWV<]/KY7/7JO/?DX[K-_)MCM<A]$W
MCZ9<>?#*@S\ #[XVL% >_('IF?+@=^O!S_+UQ(2X 1]5SC3[Z?L*XVH\WQ!@
MMBV^8>ZSS*N+1ARTU_[EXE)Y[;5Z[5]X$$;AFW+:F^%5;M!IK\.EW"!LK5$1
M9X !FYME&JYYYKJ:-_OLHZ8=J%8J%W]?7?S]7:17[OX",M^RN[^JT[R;<5 +
M]\4_ PIP?7JF*$"M%.":>KRCO'_E_>^#]R_-7WG_T[1&>?\UBUYY_\K[5]Z_
M\OZ5]S^UF=OT_N_N+Y3W7ZOW?Y?P%-3H;>W;421@KTF 1 %% J9IC2(!-8M>
MD0!% A0).!02T%R9*X>_^"=W^(ER]I<3V;G(,JB)S*=3\NV\$XE%:4\D7*>I
M%I:X 8V$K@,3@"L^?-,"DM .O; ' XUVE3]G#]RQS:'XGOGKVY@1&JX+FYM=
ME)=<?L"J<UW%Q<7R_U5]J5("UEX,:M[T]BGM=Z<JJLR=+;15S&G'1>)Q-"*V
M])EV.E+'_OO3!WC81A(;.^Z)/9VJS.OC/>]F2W*I1C48=YC+9>X],3>+^5R+
M$_@[SRT<)Z]:MT,C<9$FB2BD+GY\TD":N9D:8+-EW<#B1_,5X.?FZ>1=G(CU
MX30KQA.F&L]=PS;]+G(X<E# Y[ W7L;G_V_OZIH3MZ'H>WZ%2F<ZZ4P@S68W
MFTZWS+#DHYD)20;8=OHH;+%V:RQ6-J7TU_=*-K8!6S;&8(/UDH -^CRZY]PK
MHXL1(]]FQ'%A"7+0VF.3'W;+<P2YC&!7X'H,LM0[O]'+\T.T&3-=$TP?5Z3W
M_VH&1S7JTLG$='C(>F_@SL,.9UG.B(VAO.#8WUMQZ._0$#T$\ES 4%@6FC+Z
M#PP6#*%&IPL^[OS6<MAG4VK#V&K$G(HT2!C-&1]^>V7 ^7!.,9_OF859\&4:
MO'203AR3$;V%.E"G_UT'.0:=63K,*P*Z F/DP 3!=+IA(W_X_O;=U<=?'/2[
MJ1&QAR!F]@(]$AN\#BMA^+L@(1QBB9GM4C:E#+MBRAEQ,9@R[(I*_%J7J9_6
MZYPRT];,*:"(!+EFJ<@YY;1VF01)7IA<61,P,O5?&P^O_1Z/]0^^]'J=_I^-
M]J?OFLV.K1F4-9MM?KC^64;!X.>VN!N\/3R;CBM2/Q2D'2HD$#Z\YZV+E:$K
M*3I&U-*A14_#^QZZNFGELHIXYM(DFYC4+5%24MX0T:C-T6RT.0H0AP'R<5 E
M(Y8O5X_/KEG^OGBG 5LPRM .R2)5N8,*RQUT^U/YN8/DN8%B,@O%I0M:3;X3
M[XJ&]Z-SK+((52J+D-1H-MJ#I\>7SO!+_WZ08A]RF@<)\[]%1"M7'%P)@2Z:
M""\,AB7,6<G5T]6'<_W'I3@)!&I' _GC??DKL#/CQ1D8)-;,6B!QR+GN:6=&
M0/>(JD!@.6 VX :4S>78B!C8&J/10A0$&"?,^X HF9&9#=\2!0)S@8  =.AI
MUE3%+^(NYI8GUWO?JXK$T:YSQ='^FCFN.5YP7/_V.NR_OCQU!Q?HZ:5;O;#
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
M3T_L=J/[-B!O+7SL7KS ]9M\+YZF[T@^DAO*:228$($+3ZJM5"R5&'!WH#!
MA<)+EV")&ZY-L;@RI#*9X,RDKD&SV;2<,Z=UT:Z6-(5&MF"?M\_;56#"S^?G
M;:=] 91E+%4,*XOL &2BJ!Y5-^!G"E;<["%Z&+NHP+ZH9J+TCVFH4M6(FB*U
M+&A(69$1SU$$C]JK]RWK%.XBE$9)P3V2XHGP:GE[M/VP?PP"] R_0X'ZZ+[3
MDPOBIZN)81(7076H/$5$(.^HZ:?R.3<I3+;=(E.I1:=B0J[ABQ )A2QS^O;$
MV@WK*_&ALJ9VM 50^-32W#,R);1IYX36]AIRY/X^*DCA.@AY-DLGQYZ$=Y66
M2K^NZS#$2')C$$Y9O.W"6B8><3"=+MY7+"K]:ZF-%%7XQK1F7IAH-$:_-XB7
MC]"KQWA@'YY_>>F/ 27O7[REG?_^EN[5T\^;S"@^XGX!4$L#!!0    ( 'JL
MDED0+2EO;0D  +([   5    968R,# S-38P.%]E>#,Q+3$N:'1M[9M;;]NX
M$L??#[#?@<?%V4T N]'5MN*D0*\XP0:[1;</^TJ1(YN(+'I)*8[WT^\,)?D2
MVZG3%CT]C8VBT867&8KSTW\HZ6)23O,7/_V+L8L)<.FV<+M490XO+L[JO\W!
M?_=Z[%H)*"Q(5NIS]LIH+HV28V#O5,$+H7C._M!Y52I=V"Z[OGY=5W6_-UI4
M4RA*)@SP$INHK"K&ZXV\__![IG)@0?3<#Y[[S^-@$*TU\%K/%D:-)R7SDR1F
M/19X0;1>O]>K/3EK7+E(M5RP="QTKLUEYUGF?AUFRT4.EYU,%V4OXU.5+\[9
M+Q_5%"S[#>;L@Y[RXI<1<^>M^AO.F>_-RA$KX:[L\5R-BW.60X9'7,OG[)GG
M?J-.W;]4M^V8K39IA TKM)UPB9TW&QWFVKOLX+"68):V38 </6?1[&ZK%Y9R
M<3,VNBID[_ZI=1/K)D=LRLU8%3VR^)SQJM3+0Z;NI#Z6:B,!VRIT >C)Q=FF
M&ZUE6X. 16FD-D9UWIB?ZEQB@;=__O?JU=5'%OK/_8LS*O'B(C5MX_<Z>NC4
M<B@?,H@]]L)V7EQUV3O#BQMV#=#%@3.ERA:LG/#R?-V&+0,W3;QG),413W$^
M"\AS.^,"I_MEQ^NX_1F7LMW_W/DX5[*<T([WGU&'*7G9^5OT1<:YC&.9#*+$
M#X8AY[[TO*&7<"']"#O/N;67G3=_O']WK6SYD2SLK-G,V/HV^6!: V]I7 3/
MV]$N]6RT6;6N('==&C?71FQ7&ZTC8=]=C/L-?L;\6Q^E3PQKYX7_O)V39YN7
MK[W"I3S4R7K^/>2CB[5O[^,5F_!;8 9N%<P)WQ-EV<NBJ)#8'V"F3<ETP=YI
M,\46>[\RG;'W$UT:72B!)+\JQ*,'"0^9/?,*3]&T>RB(ON,82\*0]R7(_L#W
M(C\4J0^A'_.L/TR%EV;R&&/;\R]X C'VBI,PPC":+MA-H><YH"CIUJ%FZAB3
M&BL5&C40-L95P7BQ8%51F@JP7U1%3B!A\'&\1>/-FP15Q@4>,DQ/58ENUN6V
M"A0@P%IN%E1DRF\ ^X7M$:#?LB.+!25:B';D3E=AQUB+"650JF&Q MM$\U 6
ML/E$B0FS%?VWJC\' TTCY-54V1RE%\FZN2HGZ+6=@7!64[LSM%=+]!TO'HY4
MNE@?FR-?6KY$">I:O&GS81)&B>2IEPS#0/@RB.0@Z?M'OFS'7OB4^0(L6Z9?
MJ^#L(ERP.)XV:^=5D>%-GE.&AMLBK_!&1@!8B\0N$D69?,%F&+_$(^)4GJ^
MTX2UW8V737L0=%)1;UVJ5N4(#:2,1A0X&ZPS4G [85FNY[9%D($Q3FR4Y"7C
M=+!V!DWOKI'$MA9NN7"$20N3+.E'(4#D]\,@"C.>2ACV!R"&X/E"\/0(D^U
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
M#8I.YDO:-Q5!O8!X"M,_)@E\Q:]W_G?PZUTUFK3-KZ%V4/[F^S=02P,$%
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
M'F1B>S#6@SW$600&4,.(08&LRGB:,?/J%ZRA@ :,M#13$PJYP 8K.#+@B(W
M4<5:',8AX^50U2!(S3:L9C$3J&8139G$"G&BL%R_^@62/&0"0)QO@79RTU#7
M8/[6-:Q^=0W $Q-4??GO-56*:BJ/MP>Y$"N^#'4_)"=95$VJL"H1!OR(6)PP
M,4Q">L/H&B$*JRD4!%93XJ)TP79<F.082 0XI_CL[<6V(HT1%_M$[56T"V"'
M"UL146 K@J>/]4@-2"WZ=2"-92*]IL&R9R+?(C6</@M3=07A,,=Z7\$("ZBH
M/R$6F***4 "-*:@K ?7.2Q04 M9<L;:A)<QG&=X3'7\*GH(]5ZZ!C.U05EA[
M!GLZ_VJ#@6@7@FHYC<"%BT@*_&<F#=#07)C.2.Q8@E7"/]M_;U)/XE+4,_1+
MNEA[Q2<"48SH>$4'.RU^Y'S%5L#Z/ZR%O:(\RK81[\"B%NW%\!#XUV]YA!"]
M1B#J_A);]*CF*%:"T2=XL.C\AOH*%7$Y6 [ENO?W/*[SA"R)3BT4[.CS#7@G
M//U_(Y,>@A&BX=!>T:$$.S!<7BJ#"K=0< K_VTD4GG8CL;-/^2C!%8QLEJ(#
M&L09C!5_P=!XU7M@+3SZ$##%+$")T,3L0#;G6.\1K16UZ<F_U96LJ/@O[^CG
MZV'24G^"3AQ6Z&@!R2CXI3JF^"P*DU4WTB6IZ(@F:E)>(X>C*X(161HKO@->
MPIEU>,Y3."&("5/QJSA'']"4X-DG%^XS9AA9O$*XHV.Y#!.]N'CR% 9*JMB!
MNAQL,'>PS9[X:T\>55OBO<(+[17HI<49M%?4H0(J[3FM"8YX8HQYXJ,+.C#G
MU2!I>@3VXC>!,QQLYNN/PD;C@YWN1-*%X]3V.I0'N.]?=NO_UXQBQQ]XK ?'
MU)FB/>W:B/Q_-2'1@7F:L!0FHGT6P (R)G5A'3S8-XPZX_V UBMVPZ^5B\R7
M7#2?7EMR%DRXYO-!B5DEW;FC G39"DJ*XQ["\NL;WRUO"N<3UAHU5'\6:M-M
M=N[46.79F:IC<SGB172'[HWL"8[I-S9J>%MK4@TU5KX6M)29W\\.7AXD$5US
M]VA#9L@Y!1[>TK@Q86S\F2Y;NS?ZV_"\<-X4/-48!Q]&9J1J+M^R*,O_B@G)
M(TX23[582S76C1X_GN/&UX\^58(/9NGT2 S=<1Q_?\RD+>\'!&]OR3@:+'6C
M7CTGKW#5^\93F:7.NFX'#RBD#T2GE=#K8W:4NWC$78\@TO>/L964*R$I"J0]
MGZPA?7!(V4?RVK1\;GKB&8-TTXR;SC1G6M9[W77R5_&T<F_CMZN*97BV9BS'
M:*JY32^#O7VVFB.5E? T)=[0/](YB5;>2+ACM(QZ-V%LI)P>06E!->F0M*UI
MF'74T3.6_F&[#6@-D5K[E;3"'TB:LHA9V=-F?6&M]4^(C]7:'[\X_*-_+,N(
M5NVG2URSWH:V1W>/;N;D=;K7$MM2/+RLZMM*Y1^;?V&%X<.WL".F#KB&;;<T
M(=4Z!H6>Q'?Z7XR)MDSK91SB)X;C]^AF)\1,7F=".QNA0>2O#%1:\)VOZ)!"
MY%"_ R?C4KS@LC.,-5;5O$L)M9Y["MY>(Y*XDBMU6SR B<#MFA=!3%9M1X.@
M$^<4DI=9VW*J?)&-?P)?><:,.ZNGV% ]]!3T%.B!2E,@.$D-4J)B\=1=^%R'
M%&U3X^H!FY)%M%TI#/X,EV>7Y(NV@'7+4K1LUN["7W5(<@^G[ON\[K@#YX6<
M!FF2>G#H7Q!<$M6$NS\NUX'[G:]OF[(E4 T0MTSZ2&)C<-H7L"[&H^$*2T-U
MG/'=2.<4;4M=1_R4]_YASMPD:8U5ZW2VSY8T9YD=5@W]"[)-+%[E\GU^HC8E
MDB;M2&N<H:3TG;_R!?Z'*47;+'KV%Y9!NE62M)7%T3/L%_@CK@D)NMY:GXU
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
MVH1AW1(0 :"-,WFPZ$D&12,Z%:MG*RC0_T3YX"AY;U0K'UV!VLKZEN*B%V?
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
M]V<!,7KD89@J-Z"P&2WJ@A;K=F5@ B!Y,HPC(!LNB.*[QHLRH(TRIV^VIT%
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
M6)_45BU\,&U2]X/KA;TCNI6#WIT.JK2D"V V"&^A*"KW+SF>,RUWT*9'K_<
M=,S< 3_" 332;2*%YSXE'7\,YLY/RP+Z3;E#<E,J*M-/7/"STH777-*IX,![
MWB=[OBH]\95:5E8,W?;HBRV]H:4[@\MX VL<4V[],+U[4"9TLXE4Z)E;"0=Z
M [[(I4ZX.;3^#)7OF1]1.O/J4@]YMV9;:<_):JO5#YR;J&V\6'FQCM9_];G\
M_\R#Y# N<<4>.66\@_2TMU+M&]Q+P8NODW;M*J3]'&.:N5MX9(%77B>+HWDR
M?N]'N5HYQ?"R@+*X<I,;4Y=6_&CJW+5IR#]NK]03\M_V\3,#N2:O)6KBRDQ*
M^<\/&K3UFVG_'!MU5"T '/^WGMZ]IMUBF7-OR@'+3^<NM!SY]G,!2?"8@KX.
MV!_?%<A5K0[D6F<LW130L<\H_ROS;]O 4V[D1^H/AN9U)\E0FRVI:WT&#NM;
M]Z_[1'Y$8M9/90_Y/RCU- 1-V5TQPO/"_$]-M: X^M>Y"3]RA%-G DVKYPWI
M=R?&>#5;OYU_S/?8*RGA5/W"3FGK?F,WPB,TF ",IQP(-2>L:AHSC)N0P=QW
M?$-]_?J23NEOIZ* VS7-IC2I*//L1\Q\94*?I.I/)2IH=L<W?B5O5PP_%NYK
MQXI6;?W1 :)1\H)O K G%@H>;SW1"];U4IOMVQK([1/[].?7ZP,T /-T-GRG
MZ0=\VQZ^>_Y<ZDU3[4?K4PN$'^'OOS:2(6(M!"JA>;[@.$*\'BPEJY%%:X?:
M.&"MK%F@J0SPNX_<&00<HL_=W73KESQ<YXY@T3:<%^:M:I* EYFU>&8^:99P
MS(#],8")\O;O]HUM#02G6&]_X-.,W"$-*15^_'DC%WYHHJV@C+WM5$]SGSZA
MW]AVR)\-R!)^!'X#RM@9;+/CSV5;OW?L<T)^*1@=]GZ]+LWH,P380EE@C_"(
M1*Z7L^Z0[I;-"*AA9\B":-%*0B?+A/DW((HB>+RE[RV%J_DVD$MV/=4S #VN
MXV!4T "L;\*7AL0A8G=2V_E%1X<N2_U42D$N0V,_RM4=.^]+[75>26U#@4J"
M0,-!H('Y, L@3B^ !ZII[6#WT%4F&(UG[J-B3_;7T-HUS90,H\&?#RY/Z+P,
M5N9U!F&  K&W_5DSWB35?B37XT.8.*"F#8""81S@/@SP$ L7#EV6_:F4CKWQ
M@[1Q. ]* GZ*8[T3(/?$JFE H&$@?T!QWX2O8"B&*7X+"5MCO4N&<8@;:KT^
M5)KPF3C.8\>WO)(13B6"E,/?L5M!%G+A4BTP:G,,"$)".-5!- KED@O6<6!J
MM@6*",2* _I^4 =T@C[UL%#SMG7V(\+$I^2_:<Q\M=A:N:\$=ZE,PC;%\)P+
MA#=?4*!@1;B/&?)89$@Z_M*0-(37O%V2_4@4']!^*"27B<BE@)R=<&N"*V$D
MV/H'WT">5[V4\C0$5L%8'L)QOG]T'"F 'A$%>+10)!*P$-#0NY[I%.E]0G%Z
M"#CB<D7Z_ ;!''\U HB9KSI3.(:"]+ %',E ZW@KQ26+*8!ZY8K9.UX$O.IW
M<]O.YX[222P0(>A8F$[6M)N_G7\34]ASP6/XL<&$';"6ML%:FEP!<@8PB8O%
M"6D4U7#X9K:9X04DE#Q8GOZ1H+_ MI,#XN2BG(620:Q__ZHS#J:C3V4QT#70
M4??0Y3%(@ "2:I^DK]3;$^T4$(WF-A80)Y)N ABMKX>: .F>ARHT.A[5"QD9
MA)^R@]X?E(">X@1R;@C$"]B'#+-1 8/^<JL/+ M#Q1T &X=3)XN"51/J9Q^
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
M0M\Y'-O4FM!6ZN@18$H-_B<@C)GKV*YV7G=6&Y3"@,+ZV$)( ' $7 )"N++
M5?"3(J !]QZ!>AVNJ@.P8B?B]>$"+VNB;[>I=0V!)I/UT" OYT6Q%KBL EQI
MA?FU$7OLX#VKH)+O'"1PD:$S2\>_QR9X75H4 U2U8/EUX9H:$GDCKD&E9%>-
MOSH (;?19_4(,5C+PZRGZ9>C9^^"ZQ&DH^U.N,Q"TGL%<K6S.%Q'0H-5"SO0
M?W38#@%4OE=(FHA[L31M-A,3L11J/&<$/8I#W)+'PV;*[JM!/^L;?5+"333]
M,A5%@.T.0Q;N0,4KHZ3XV7/-*FJ\!;>R0M Q/[-.>C\1^QPN>&&\)RYE#-]]
M#EW; QIM*\"&"I#HP@7<C%7OI(R1$06$I0S(F1WJ^&5S\=E/[(!C+D#'@$M+
M&(,UE;WRT"$(U(SY>JF%+5 -E''% S58X"^#]2&2#94%F2#*,M K.< <7V\E
MTJ3/QN-WDA=*L4/ LI&<!<0#SY 1'Q.?/#$22[^<]"^L9@,EE8@M&D^>;#$T
MGL-"B!)H&.6MARNX&(W'&2$Q!J!B9_=JO*W\=\J6 U4]/P!Z!H\*08)0A;7Y
M-SS2 4I2OQ>T=--X3@9&,*+E1Y3B>Q5!-&<-RXDO\*>,)2%T$,D_2*<C0*%?
M=/L<%$&<UOUM+J"4QK,[5N3[0R$_^:7NXX\@0LT%G$+OVOVWWG7 CU@%E:*-
MWYJ12?ZS?]U0_R8A(8_."<0U[/A!)D;;TDD^:#$6XL0?P$/N?D0KRBMM>(W=
M7W/W/Q!KA!)+-9XC9#R&[WH$,L$=@Y?17TA.(TB$5(%%=2;@+B/&<S]ZA%!"
MCQ GH19D3B#S#IL@T09GS:]LZ2CWT1W&/?K&<V=']X/[G_6("@OT  !B"-60
M2@9Q. B%+YNRCGT80T50D0.5J5J7ZSEXS!V'HJ0>@W,IQ.'_P1L8-%\MVC_#
MZWF #NX^FD:/N ,MA,ERX)>"KRV'=5Z2%CSTZP>I7H:'Q5ARYIL&!%+X/OB0
M*2?"J'<[;9AN>R5VM&=FW&V7W1?<LQ8SQSS#%W36RW*]V^'?W*UPUOT)6S>-
M\O'?)WW+E/7AQ$2:P#I]VY+W(-7*.6.*"%K"_]P=-4[^X)IW4@<^/K)SK'5^
MF\BCKYQ:+#NNTBF??HO'XT'"<'S; ?Z/L5^VF=QJJ[,:R.W\F/N N-,M^J%=
M7*E3$WE]^,'UKEKT-XW[N0?N4JUN:WRJ%94>JO]H=42IF:),N-M2FGH$5[1(
MW*@?&WU"'N,0V4*X*&V*(6A+YM8^^R,",T+0&_&]<4:"272XF=]_F$"Q)K[B
M7G,&1SJO3XGW_V.S G&4AMG\+/ 5CH2+J@_RUX\[N7>+8_]!4@F3:+SC!N=^
M_M,8_W!>L1B7U*O]AQTB^268Y_HU'AA;Q>IJ/>\_'(?#:6U=;ZJB<+V9LH9Q
M?K_4QOS&-96R#%=3O")IRTO^5]JU-Q[SM7W^N"W7]MF4%#-_U,;C=:]#LJ<Y
M3TN9V^:J7-LJC]RXNN)+![^5$Y63%U*SS5QXZR6K%$L_Z+KNQ1";'33!&?_B
MADB"KD&"%H/.2'8!=WJK_T=/[O]Z@A^YXI</4M9I!6>L%3W'2ODB+KN5"^+D
M70VMIWC<#)SWUIZ/MM+@4K6X;_=98'JJ<V^ZR\,+%SM5QRY[.:]JX(D0%:M^
M-)S6ML<W>])ZINY9>YU24W*-]J]!)+7/OJFD+8?B8JW->0H[F'J[U77I4Z%6
M;W'[<-;MS5IG)9K[XPKUP_5&;!_S^?KK]L>5ANM>);GOBUH3N5BH)ZQX]J0
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
M8]&:P1 H[8T0V?E%P>?WI^VLU+LKB@?Q$]&\:&E*7H0B[.NI$9^S;RP6VA"
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
M[D][>?6&T[R\8L5.U;1DKX^RPCXTU_(05)C;J:^K?Z3AG_Z9$OFC-VY/7OU
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
MB&TSU[$_PH?PE\?WLH-0Y%_Q!F"1"0,#["8[P*H0IM\DLYXGH9':]E]AP<+
M>8B$PR=HDL5_8/BO"/ROHO1OP85TNN()[J)BDA"K8/0TPV@W^G^/]LIE9P(\
M@,7+,WG"P)[:2C0K\SWBAI]G%PS2H2GL5P,C-#\6-4\]'PDN&S2X'C#A!-3Z
MH84]>["6AY;" 6J4&G:<[EJ>GG^C\=DRC>PYL8R\!;LM"7'[.JC.]F]N!R$6
MSXYFV&?IKUGQ2$\1V)<GM*SAQR&!P7;]5W#TX7T9/0J(88<AFZ58)%?]32KY
MGJM@!3S.Q7E"2<(_3:Y5,#RB.S9TF*C7Y4*'I".H/&&D*J,IOC>1[-H4<(.,
M''[.(LK0B3$)$UA_A@TGH<D(N.__@^R#'.W^8HC&CL6XW("E*,#C=XZ?)D\8
M^0?H8!3T$_P])_A $;0:_]W^Y4,"<W@-=.UE#GCP57^'G0L -]IB)\BP%( K
M$-8N^:QQP%TG/P% Q55VXT#0'_!U@6Y@A@3CR3.9L^E)(]]$NFKGD_HR[HP(
MS@R8)TKLVSC-*G[U>EC,P+?=-5,ND8=6>FRZAW%,WGJT>&SBMQQ+L7?F]-CG
MQ&A<*G\BCQ96F+$RM@%9 OT?OV_^_^V?;AS)U?!6=02AT"%FJB]+_QS',+%;
M(52I-O'C<=4.K8Y\D:9&@NO6J[C!DD8+@LBEQF/UYBKIO:4/E,Z6'Y;5'NHO
M5K-H?!>8K?+NR!A>T4GMLV-'Z0 AL4> $R.Z4'1]^IBV<J,=2</T!*7:1&UH
M_XEP2ZE;7RJ5<XQJQ:3$Y<OV>UBH/"(E*>=8O8Y3+8L6,<I*3<-V1+O-MR?$
MT$YKA.OS;JH WS_.9$Q(O-&/C9KQ"EOL*8JWZ\@^3:/X-I M@NT<YYN+@WP*
M:G<0&K#FP7:#,PI G-']T")WV?GR([(]1:?)5@7WHU<FR8L/34K9/R)=Z"E6
M[S8LNAL+A//&=X3F#)N,,JK2Z.)!P79N/LW3/NUWB:?H_>M@:UN+_2/7NFC]
M>P&[9C=* 4FR/<7.*R-.JSO)9#W)F_9I6>PI5NI6:AD\Z6>[VTXY@\8S;.(0
M8C*X-3^8JW%8IW'(U:_(VZ,T:$38XMLCEVXP^*0 *4/N )!UUDK]K%7!-=W[
M06) %3:^#6AN>^/R1C\&6+5%H(,:W];613NM;G]Y39AO3Q$PRO*U3K0^K ;J
MJYPC "@8I?TPRN7;(]>GRT9AXSNB>89<;8I*:#%JUX^<0P8;40R+W-=U:08-
MSD"0IYB<-(3.TV03;6Q']I]$/EJ,>MZF!Q#UL,D(_8V./&_6DYL\P]J=,QE5
MF')"@V"UZ"GE'"S (1Q__Y83UB*8MW%86Z"M[0WI#6E:[O*:J EPM@2:B@CW
M(R)XCU.^<RCG;#MKE71Z6XKN30!S%*CJF,G:ACD."&KO.S0-R)YOZV+42COA
M[3=5"'2$Y@VY/N7<84*$K4$SC!J?MBZ,PTUJEZ8_S[!N\9+K4XDJ9H.,_:;[
MG= (\W,XP/SF&N"(^>; &47U;FMNZP8[$!-N\RV]2ZY7)*HR!Z40D^F 'U_"
M_9O!S5H7\H8-)%C%9U>&]>4<J?80)AS_\&C/R0?K79U7QOD/YCB,G3-+#6U4
MC!>)&RVZ=ZZ\<VO:+:V+<?8+Q=E&TL7RN??$5S[(,=+[.$(%V\L6FKR;-POP
M3R1*5BE:;:RU7%FVL=_0%;[Y%AOS?WUN_U__$^783A>+<S<<O+K#4'/TVM%T
MIY>MQ.;S$N]L;CQ^GKVN\:3(2RM&>\-5I;>=B6Z;;$[>]S^F*QCP2VB"CEV(
M__25XF>N5LD1^UV?EBIGUP5FIG6/SF=DB[IWTNH#K=_>N5)L:>#>D4-VLE8V
M50#7,4LUQQ2:S$,M4S?N56G,P-_+Q9>0:O1+6+W9=[=_:GWRV%-D&E=]B,BS
M[\-"8/0"_$QI=2;6UI0T[V)ZW]1=BC\/2P8FN"_5Z(?[/]4HV<ZI;6V:]/H!
M]JU"Y>MH[%M%Z7C^IQJE6\ ]J2FR0P&H)I][E5&P=&'GLP<4TGF3[QQP3_-2
M]/FE&K.1&-;#]0/D?9'[,\!U[!B^Q(7U J!AC,14/%S??ZA6>I*("&@A.[T%
MG_V.\R,JX>.8Q.,9E85G '9\H33XG)+S ](7'^O$X#X:@.%T5B/XI(7?',X?
M4V[ O)=E8T$_'\5C.X_/AP=SJA[!D9'Q9""KC'19"6L==&YZ2\P)S'>.D6'J
M&#\>[H>)I"67A*5QJH^) /M;B#T68G]6._/LDL@TI^!Q)AG=#=BI@=F-GRYM
M'^1>18E8^(M&YFO(P--@3I6&;0P([S-MX0#83W6J&0X;4WB&"SR$2O= Q1@>
M"NKH?1O4@*DXGH$:B8"!IEY<E]XD2]S.B5]0^B$^NA!AYBRF=Q>[.QGA!['I
M_"]_^.]BL/X?]MX%+N:T_1\?Z\%B::V28[-8G1QR*#E4XU2CDC&5HB>%4+$K
MAT4ZC65M% 9%Y#!I.BNAVA4RJR2LI"/%:LNY X6F&#/]K^N^/S--89]]GN_S
M/-_O[_7ZOUY&T^>^[^MZ7^_K?5WWIYGY?.:6TFD<=6JU#)FIA.3];BPBS+SM
M?^F7WH^"%HMO(@/WA"\B>?C_P(!=%A=Z/PRX;'U1/==*(GTT+^1:$TJXTN5Y
MS;V,B/4)ON*;6GK2[^  &]>8V,#L)?>%-S4W;R4$5,5,P=D<F'W[!?=)CYE?
MQZ,T6EG(+PJL_&Q0%J*)>=W%3LT\#T)]-'5?-\WZ:A%S&)U86'%.S3R77RT<
M"PK#V+T8$02#5\]#^J\9OL+(_WNLV(N"UQY'V]8T;<2V3GXH@+%\TL,TY CA
M55CW&\3OEA]\9R@F Z'?) +#_Y,>+9-O-+_6'&(:<LB[35_^NH DLQNZI+CM
MR&QQ>;H1'&<?TG]@Z$[,TO_G?K%J0.]'4W-U4--CE)KVFK<$U#7L=1>]0\QL
M1NKC@S)[/[* %&F9$LAL)A4:I[AH&^-!G].*R>RQOB#1!P;;:Z[A[UY3%EVU
MJ$J:MZ)O;EZFY5'[X;M+E[\Y";97>CM/O525XM%UK6/NK#O%AY8Y>\8)>JWS
M6WUDTL@#)A7/-Z[3=TU,>=CWUDFW4<]'<3\[WW-ZT=E148N[:5WX;D#_4SO$
M5Z_D3[#I\ZJD^L2.M0YEUQH?X]4G__8;%_^??QA,L([L@M^';>7M.F9*R)QB
MZ^C'&M'BWZUJ7"\OM3&(*BH^MTWSB+=7]!\3OAM7/"PN)M?68(#SQ)[ZD[5V
MKJ\Z]T3/<.2ID7/T#184F0R<9-KP[3=/%\<)NV9SM@3-?_#6HRCLAD[XNN'+
M=^R?Q*_Z7$+NIO>C^WWV@4T6L]_$]M&P<<O7:KI^*KZW&5N;O*<PM!$_4/#[
M9H\BX2@_?MUM199#9C;[<TOY97Q[?!=9ZC;OC1C,9D4:>-0T3^*US!K&O.\R
MP^A%CQ?O3SSGAIOK2[TL)+!4D#U4F[EQ)?C5^AU?1M7W<W",9KN?O%\EJ>H3
M*ML:INC37W)NY'E\17?>FR3I6HW4TA=K*AMV6.+[!,$_HOF3YV#4Z*"Y@?^D
MX#O@54"\QEA\&8IW\GNZ^$W,71P+K6WR/SH.0]2L)#-./<4O9/,H$J7M4$B<
M,W,$V<.UF[NP&W;DRB\O*L!76H-C>6>58T,I"</Z( GWWQ(2YANNU;Z3U#S)
MIUV<&C<NB("@QQHV<\-GHE/3]\/&"=;P5219S'L3@Y"7]Y$'I:X/AE56P Z'
M!'Q!2)>:TZ4<U=(?E4N17T.^&@\=06&HI<1K'_H^"8;%K#Q@<6/X.[G;TUY*
M,&WA&IA!=L[N"/P()'T_^[>0G.5?*I<2,'K$@?,&0,O3!T$H\P:\;Q6V,7P)
M')=__:YI[L><(L<Z-X8VO<NZ-8BD6I]Q_<*,T0J-M)5%EG )'<[KP64;VNV,
MO#C$\X54??*E;8B6\8DIEY#U;YW7PE)W!FVB4F6 =BFBO4'T$!FK'J>FDK\%
MY!OCY$?54FHO1/4S1D?Y.<J,C0#L6G9#< YB'=I /A)TKTXG_%M8&6[95)-U
MJW\+8N41C^]/GL?OG@/N_?5W8\&XT\.) H2%X@5$^$)]^2P!<MO*HL=CE"0%
MG'ANVR86(P(*,T[$NN@.\IL7:V)#^-56]"%5[D[%"E63%VL$KF7Z1"YMBX>W
M+5850'8K2[T"VC(PO:GF&),Z W746,PKMM4V364,\]6J'!N/_S=LMT0UM1 V
M,K$JF*27O%C#Y(S?OD$HA29H)[0;C-!F66!7:H\6FY9RJ5&J(S&LJALU,6%#
M8[H PP;4U,RB" )7;P^!VWM'*XL5G[IM**&PC]!FS?3GW&'C#XX1UZPM]'72
M?_?UR4*OZ]H-(<^D&C:K+]O-$B7S,@]K'7(K73=IK</;[__(\.YCF+)U5X_
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
M9>Q8G9L6YX6&0%F@Y+P7,A39Y$-2HT]H%!8)$7 X4F3'OMM+7NR6PJQD4SM
M/]A_/[Q>7N%>UQG&D:16EDQ3D,U1%#SGIGF\JS9+E7627+#&[*7.![L"3 _)
MGK@\^ [_L?O=T?)BKK2SX/L[282(//(F*H,/J*3XO#&Z.,HT?GD1@2E=W+CC
ME:BN*UZ+UDER?E6IA+%,9YD?N@2TJ>+C  $J=D "_+J[BG-"0\5E3-763]%#
M>.%4L97LE'=@IY6%].B1 $XR 5BK+/#Z@Q;0 FB^H'E5J4 %L)4EU9=Z@,;<
M<2D!D.KX 3]]/L8/26Y0N/_8=S5F)S'PCR8O(DWCU/ ;A#8A4I3JI,1-RT\V
M+G"M#F3D<QE*G- '8;:A$]B8'V$#  %FOEW^E.PO:2H!]!W59:]$2?P+"',\
M L"9 1"F3(_94K/X3^(7KC""]5#J:(!FWX'21E%0=$A/!=9O7)8S-=M!7;V4
M[)W$ZB]0(Z^:.O^XLK!R>+B.*542.\->*^NNN'SK501W6H/F?B-Z9[!1\!P
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
M3FJC&T_T(,N4:NP00\LR^=(A!1. KS=(S9MMQ&@X]1U#:?%AZ@I*4H-H3$(
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
M(SKFVK,?Q!V;(_ [EE,^0>#;%// ?%5GV3R!G[!^G+QF<G#=0LE%_D6GSTO
M4"6"S+SMK[O:1P<C"<9(N-*] .69V_4C1P!U+@7-ET=SLGB'@N!@+D:",1R1
MQ\'LL?ZZ/B]AM58!3!2^=/@IACGHHTDL1C,6M:?7E6=>]"MZZ9*M*&(_$,O
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
M BU/B,UH[;.2'%*)@T_D,Z+CH.*=/-\/@Q*P,1N-[3.'=,A*T@2-9/.G^;I
MQ[8), *6F,8+K<:>%M *=D_8'DUI1%/'K9]5A@7&(3V0 SW0#/MR//$-JQ<_
MV1D=P*,[-VR?GB(BR:0)@-PJ^N;D:&]Z'!+@V7)RK"^F_B'=UI?D]YVI^,H!
M_C# KC^?W6*)!4"#&:EQ7%>(JK 7DH[.S?X%EO )'6/X $D':1#2OEL(2ZRB
M2)=<" 7"QJ1BISDI/W^3Y-J!;F#SOP$:XE&^1F6P5-A,,@,:QK3"XJG"XR-:
M62W6$I3$4> 78B$UC;Y'Y1S'ELVI=PB&4XGD5"H_W,&L3N2&8CLG&Q 1C:>
MY*48!V/">F-I'!#\8DUVT]"F9 E=*R9V3S)MQE1&]^EY.GAF@&^.8.T<%)/-
M8)=2+0OCR2(?R"W6[ +:2L#E5-R13^J3>'@ZVN?>K)P["G9B.CBT$?;3HP&H
MA!Q"H3%L>\58YYQ<J->W>,ZBU7;.\CO0)'S_33R<!&=#9I/P3,?/Q+B%:.9F
M0*.Q4J+,Z1*>;D3Y8OEP]0&0L"\ 9<1RB(@EEIS.V6,CU\L%!C5")!7)#]7V
M#T<@*>(>#,T[KCOB4I,GNP?I:XTM3H],?U^9,NO1GN@<MP?<_$5NHD2?SI'5
MW[>R-'@#!G0]7S_5;O_8\;VFIDVLOG5\T+%?USL=G%,6\.7X'YSYG\>O'_#-
M@JX'#V49O'FQ(AM.C/\CUW+@;3<'6$[57'I@^Q(#;Z_8)3MG6WE[Q8S7_6%0
M0H)+MFY-=$I1\;1YBIO;9%O#9.,U7O20S#&^ZD!^%]9=XYPSK#2NFJ8I.1NE
M^"-&<0..INO'C$SCR'1A*N?L=ZVL<R.M0I9L]!0LN]?*6L.7AW5K[N)5.&W]
MA*G,E,6*/U(&VDS?".U@V67Y9:YT#ON^U@E;NVX3)DAP4$SF%48?6G2XLGQB
M*^N^IJ1\GF"-TW;-!6/P4IH$SCD##KI/Z3S;Z_2BPZTL'.;+#X C=^/P.G,;
M=[4#FNG);>B(:_W3:'BL8 U>23==?ME%<Y[V"H'4D7U?4X2'G7:/^/K"A%96
M&Y;;T7L7A1.78IDA^3UAS,V7=8<XY_05UY$!KR@E,GV&DBB<D*":X&TXHZZ
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
M@4J6@WK 7SA\ID>&M*QZS_RXZGBE=&P)8NX00\([3L7#GUL,^LCR29F)#-P
M0*,6BEA&3/D/Q#1#N5EV>@,[8V'D6.:\\V1'#Z8)0. ,&X$S/_8Y=,* U,WJ
ML.$WU8>_RWB^E]"UC(P5DQCPIQ__/N02=),5)3<5 0I[7>^/7A#_$8[VOX4C
M&]7&-N8WE0 WR/_D!IM*F/^12L0_J"2V3*5E*[V9/FUA^W21&>VDF#+0B1G<
MR;<%^.DVW_]D6.SO+'J'7<Z!=G8._ /%-VP4E6'_+P(B&;)'0K/ S$CQ.X1F
M>X-<]N;;_PUOEC$?^].;?Z'CB\4_QV2YD_*?[OPMT?^I"CXL;V#GM/](HDLL
MI,C WJ3_')'9I]F_N//M_^3.WRB4^S<* 0C5_V<(B?]_A##ZWR&\R(:0_/\*
M0J9[>B1V5NFK:+QAVN+W!JQJ,R<*V!9>;7,W:X$2MA"5L!3 4%M-]9=0L"FN
MP,[-/X1">UE)_TQE>%UH8<\+ C"F25O1%S0O@0?]$P"]/YJW_S&)J"B+P#[!
MSWHAV=,94Z> E1]\@"R"ALO64]G;S>=9?(&M)['&8?G*4MTS[.9LQ=&!U96Y
M0^&70?^0HE_N_BVCR_[1G!W 2_\20&.VV*+_141B_U<B@OA#1'X3[!]L9*M\
MWK^J_'+PSK*8],<<S136%W\F'8GMO#[+DA*V)<OZ#9+1B"W_B.4Y^N;?Y^C_
M30K\FKJ!QH<NK_]1MRSGUZ\"@-6Y[W]AH]@?,T7P;Y&'4P"PY S;(=$_L%WN
M7).==RFLO-/\'60=9I +F&A18(8S)VA1!$ODAP4FX,:[8&@%>;T(T$)J:HQ7
MOZ4TTC>&&.-7ZZM^?HX#HZ=UQ$+^A0_?KC.:,7<<CQU3.FA%-OSO;W>>4(F
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
MULU,?&66*L72K] 3L.PX+ZC ,S\)^6#$']D!FKSLK!B[ -N;99<:-_.&;]+
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
M6'NSEZRDROC:([$N-&P0>>BM*;7EGM6(>UT5OO+^MEX@M6YRH2>G^ HB19^
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
M8;(BH-OZ8)S3>$71_92_77F>+:]B^ZK0H8H;'7Y?&1E_^=00I^9+TDKVBZG
MCX&)KS*3,OG?"V:L1)RNK#JNY$*'*F,7QT-4CS]%);NNF-%-I-MOZ'86WI[1
MX>?S[8NR%@PN*VM1&DCZ7V]).GZOI<.K8.IA,_+S$IIU3/^96%[!2U9]46[T
M.Z0JP)U8^5TGA*6#0:<"<?I&CH6!92U4V4;763K<[^9UV&07R3#1G.M[S$&K
M^SG>0*ENN\J2PRF%.RJMPF=/6 >) 1$;]5O-&U0_W#4_>@8J70(\$4H@@V,7
M016??]A KO-^5&<%V;ZA193RM<O,U$N-=7U 8M1MT?(F8S[QB90,ZS/NXK%@
MJS:2T:UR;E\"4B5WI-Y+:D!W9LO"I2TA-Y;L1.MW"C;AP*$L1!.DS1I\I[%2
M^!@YK-J9OOH4V$QP?!NGUR$^-H&DA\!9*'6;P@;R^_2K7NC3]QBBH!/I31J_
MQG-HCD\$W<ZF $W25PAJ^4!G!F)?IY5$@^CRZU"O M%ELP:8K*,+X.Z(E:P\
MM&AI5BWW@%).Z#U7?VC=WHC!<K"Y9M B5=N)B*^[#EL&[8OD^4<5LIR%RR*/
M/5RN::O8H0 W!T79C_LQKHM52XLF,LZT29"N8<0.P(&,/PN1J![:KI1.(VEY
MJZ^ C_5: X[/Z<QV^Z,4.[?V*4M5P*'O&9H26RF/R@>LZB4>SSJT. 3Y>4DU
MJ*54M\K,S8(L9([9'9$N>34S3TJRT4"ET(=2?R%EU85COP8,R\D)MO6@1&/[
M)GSS).4KIN7K<.0ONKV%?[J,2LD[MC3P+_;>4SZ^?6_EX5.M)>+=NB)/.=%0
M3,*/V?T&+:+'!-5Z1L35] ;U9)MP[S9( S%B9=;V^XIB.E9H)?ATJ/%.(_IS
M]=H7E(RK!C5ABC:?HKM?(3:L&F?#SH0O4:E225Y5$#TVL=AQ-F +*%."6W5J
MBFF9]Z(;4K6QO.7\$= ( &*K9MA8]*UZQ_8)G]K4#85IWL3#<K91[\><,K.&
M+[Z9C@6U+)XL1YMQ3[/47@,VKWQMGY<2;7S+UEE$_ZU:K+RY'QFO]8DMT?%Y
M$,%+OL)7=L9S+?\('E[);2J[/0,9UUFTV<PR]48\:\)&FB=CWU6F:&ZPT'K2
M/.:L$1EN,:+%CX.,HQ;0^) [7?$UH7N)P5/=+_'\G:;O7&'Q?C\PTF(B8 ,(
M\,PB93BYZ3@+)]X>T'K2=-,PR+0<-LD\C?AD?EP:,EZJ**<U,EI J[>8+9KM
M/JT^@B6KFH8Z4*EB/UJFL/%7)>%BPK_@I[N$WD;_W4^W*LA^1_:-,"80"(OR
M*TV\(3->41CI/(I4*:0R)#0;FUE.8]V1844@"DW/<AVXK"\S\H]@$OH79I-_
M1' _-(/N]FFJ'""P!Y6[3_=&/J_RJ%$IM&E1/^U>9>M1HJD>^YA70*M[SX*2
M?R,X9BK+>-Q7>9#9*:,'%]+(C-,X&6H*F"B-$9YUEHQHEPK[?9'9<9S>@1*-
M(6"E'_E\,G'270-"+P^^9^GRJA(VE8^97G&>:#F K!2\L-?7AGI<FS\0C*S$
M3V3-)"\9K 'UK:779%?R**^X'S3>@OX_ ,?MIPSH7I02_UA.C'@=0]02")S/
M'*8*UE@9[Y2\2S44R(MJ41<_&I"CSM.2$RRPVA/_)'8G2H3QR#/&_:<[75+&
M_=TDD!-0F>8^Q%A6WN6EUC+FW$ 0X[]O% 7]KJ>O2:!<M:T3D;_#Y[-?=\OV
MWNU/K#XNH0U3Y3[^PGY4K" ^=54G#?]T%&T@=(0,RWT!S0,]33S,B/RXA!(Q
M"\W0]F2_WG>2 0\C9V3AL5@CS*3Z=!V$"5A*GY6YC'Z:"V1=)&U"!=FT&DOO
M'YZ3)H]=/[*SB9)0>9O:8>D5TR$&?!\PJ?-40>[Q[<:*/"Q>+L:N=&TJLY.1
M:QM"OH%#Q[_& A:^R\6.CQ>VX-: L:3";)AYF?(JAF\??_.Y\1NV8/JVT38
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
MO_S@K>:,?RUPVQ%CU?\9?:NT]Y;#LCWMHI6YA\F4[8%)3:(<B=A1EKGML_+
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
M2(:N*/%.M+JLY3978GD8E_N.TA/Q8]B%IIT92"$#3%$ AA;"\IH++<_G/"C
MKP#)C^'[%_ OX/_!0.NX$H&%!.,G [#O8C)DO@-UYKNB$^IYU Y.2>CD.8_@
ME0O3;ERA"LDV24E\]A9BT> ]>AZ.J0;JT3'GB\I^RKVT-6Z.^9F&Q(Z1RJ3C
M;PKKQWW-=?JU3X-A37[#*EGO?.+1]OC[5W2$K8$"J%?;QF/EQ34TS,\,,I#V
M;N?.X@@RD<FD+DU->[F27]#+IL5>9^Y1=<G^7,B((F2)#05$,)A-@#:90(=D
MD*Z&8<665_HHH+@<!93DHH BK3]1-OQH7ZR!/.5$,=5*):9'_72?$'"90)LS
M4E4^-B[](/K,E8!MOCA,3.:4+T#5WP5519U1-':3:@W91+KM?W=^B9F;'@JP
M_&\J,F_R=3X2X,A+%'RM4%OA--TKQ[Q)L)SV5Y%GN/[)_)&+<:)$2[K,1,A[
M2I5H246ER!XVVVUE2WN/:SJ#1ETKB?NL;R[U:)_(2,3UQ,#[9-/C/@JP+]E%
M ;\FZ%L6HK>VZ!:_Q<N I4FU,CV7?SO1_Q,[5?[4 G[W!0X@<N=>%]#=ML\Z
M"X;B;CP]CVO4/[L@A:<C=DX>1-91%MOHC B 9[\.GPF<-D:\?31!#Y.; \=*
M76>[/?EH=KNL:^[MAH2/72AP%":!JW5<B0+$%%('-#_JZ!-Q@<K2AP:Z-%Z0
M\CVDFL:3$"[N[NYUAIF5S.0$\U^[9$NUZ<><?3QTI-12TI;D1P&?E5IN/G"@
M@)-T42!C;3OU^ 8M(#^TI+I9CEQ4+I$5:"431 &KL;\Y_TO1' 0*0*> 2S00
M>)_X-S4DI! %'!*V7/SZS7DCE?-0 &@2<H&SB'"$,JNC@-0=$ +3'BGRN^^/
MR8<,GZ8B,6I0 &U&[T_0QA5:2P"TND3^'CK\M?A?B_]_=O$*E_X]67"-U%F#
M3DYLM30)K)0#<K",U&AR$7>M/E(1PP[EJ?M4#'D>H*1Z657P\Z%*OPT5$AMY
M/EE;YI+C\@+:S=WJ OFU[C&]?5S?_LH7<84"V':X1]U,3PQH7HTONU+$+7AO
M>!>>=<Y*)BSP76I"_TA;$0%[>@3E:$ .8=142-H="0&%Q-%_RAO-[*[_%'-8
MFPV.YJ>3D@H\3*\5S%3GT@[FZI :6?\=RT:J10QW' .W$+8]"D6:Q/.418X)
M?A:28)1^TPF9WWSOOJ,_669:H.)CRT%M7D;:]1,GCS)J6M3VQ4O'@_84@@^
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
M66\K!3YDJ2RY/K43IUMN@)[6TZ= YC]P'W6:SWD+'"8O'N/)H5F1'-DRV4#
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
MF7TO$^@73;K'W#3Y.$C+U3>&9R?CL+1[PW#_1S5C9J-CB<8,Q2!R2L/@,.3
MM^[49R80!U!__3G3K?J^66Y.7]W5AS%_"_>:-ZH]*W&P62%&,L"@0:*!F+R[
M*2+WTA 33YYA1G.#\.C!%H2D,Y6\@I[1( %L@K,693T,0T!F48A@I^PPX75+
MMJ$G(BIBH@NIRQ:O5>2+O5WEDX.L-H,+DNK8C!3EFSDXATJ0%/*<HGPBG<A5
M(.PF>,X*(%.9P+,9H,"?JS@[\>R:IM?*<;X6&J2J"^&:CS9<3?T>^#+^6W,#
M;T5=_(0!\SW;GKJD VY67U&3S?NW!)K8WV>'<3=L\44^44C6]H!]Q-)4[-A?
MQLC7 &/W)S.X;.7CGXZD;:4E!@TN]?&DYM@RU2=RV7%%%&'(=4FU.G#'O73W
MB9%*T3X?.:RE4R1BP@1!:0&\5G5$[@\3N@'@:F2UI/96?D+>^M?'4.@.[]2+
M00;GZ98.,R]U RVCZ>0P<00^\!MZ<U14YBH@8X;DN\7&SHAUJ#@)* J>UBW&
MOVQ./J!'L7:9HZUJ(N.A:@P3<!F>].W\5><%$'2*G_WD/^:FZ;G3!.;KXV\P
M2$^D>[]7S?!MF/]DS,JXPJ0DL)(F1OK=R[2ZP51.8S9Y]0M&F%K2??K-+.8.
M!MS5;Z"#!\_3A"3#-HSZ 7+<N&6KY<:>-&Q0[^DX&,SCU:XM&^D3DZK0'&2G
M9M(VZX&ZJRRL\2AD(<2/N<^SS0?O"^HO@$L'R :I"4-/*:@!*N6EL>I5E>XR
ML#FU>(3XRV[,EDR&4F)+L#*6[OWRZD=DJ+A1+7$PSN^JKB3*;K&$[CZASIP(
MVX0Z25E#)#;5;E>]IX2/2*/]#D/7!6 81NTMWNZD,F_!<2GH_::63IZNO;>N
M82%H%92HJV>@^W10'8!6;,D^+T;S(R=:L0&UI&VE84S4391S1,E-.)@IYU;"
MVN?Q;S)\C#*UM,=]F2YGI8E^-_H,ETB/O?H5\:&3""@P9]^A[!+)@]VT!E68
M=^V >:\N+->ZDTJU.O(XM<L\(OE>,2E,J^G;+?O<-E#F.-+6NWNR\CKJ*E,2
M_M-!\NM.ZXG[NR<'L9C@G6-+C3L59QEVYE:<$/.0VRT5^YP$_H'ZKY<PE:GC
ME>$'KU4[( 9W!5RY>1E!5EEM>.S.:Y;L7_>**F'6[C:OVLH8:,5['@-&S7)-
MG1RO;Q?<&O[7MA><%^/_!%!+ P04    " !ZK))9<P ^8A08   -(P$ $0
M '!L86(M,C R-#$P,S$N>'-D[5U;<^,VLG[?JOT//'[*5HU\G4E&4W&V9%F>
M:(\MZ4CR)/.T!9.0A Q%*B!I6_OK3P,@*5($ 5*2/7065:F)3#0NC:_1Z 8:
MP,__?%ZZUB.F ?&]RZ.SX],C"WNV[Q!O?GD4!2T4V(0<_?.7O__MY_]IM3YC
M#U,48L=Z6%M7U$<.)<X<6Z/Q<$9<;)V_/SX[/SX[_G#^T_M,>JO%\C\'GP)[
M@9?("A&=XW" ECA8(1M?'BW"</7IY&2U\$/J>\0.CFU_>7)^>O[^[/3B#)KD
MXB7VPAN?+J_Q#$5N>'GT9X1<,B/8.;* !R_X]!RD!3T]/1T_71S[= Z%G)Z=
M_'YW.^%5)[0K%SWHJQ6T+O&^Y4I^?J!N4O;%"4M^0 %.FU&@CUMRUFZW3WAJ
M2@H%$471Q M"Y-DX2^^$:88L\8<3D9B0.ICDZ0)L'\_]QQ-(X!RFA"%MA>L5
M#N3M@.03ELSRG+=.+UJ;?@'IR&><H>"!9TI2<A4%-"RC3Y-$!A 6RV+B@CS/
M#U$(HLD_Q1]7*^+-_/@+?&,]^BE!88QG%N_C3ZS RZ. +%<NZT#^;4'Q[/*(
M@=]*4/[WBN)C:&%"0GT7*R!AR2>0)0!QY"V[W52<%(&H72BE( -0B+_"-"3
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
M4XP+>V55" \ ;F&S7H";UFR)JJVT;@.M"MIDS7R$B'/C4ZGEHZ#9']#BMJ4
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
MH'">4$_:1,'E3T&)9P1^^7]02P,$%     @ >JR26=1I>1?H'0  U\8! !4
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
M@$5,>83&'*%H]X6-L0J4JQNUV+G00\39=.=(QBX?U4D)J37,PYCHNE"9I?\
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
M?:OZZ,JG[W3Z7YH .,KXYMH.?55!'M=-#>ZK[C7@? "*=-!;AEQH@;;>BM3
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
M%(<1X6ZV^#TO[T#K8VX0XOW%UPIQ5_XP/4C"@7NWM0%48K&S\%MAS= Z8%U
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
M\7MI3.)LQ3M],\V.ZOLOI_F@?.KC:<;:YS^@IJW_X1*G/H!M5MA+^-/[69+
M/ G!HFJ<&F*@4&/_4IY$#5<)^62&,M216JSY0RRP%/5AWG)CA O052]3ECO(
M7<>:2*M;05(E1?/I'B]RI+<W*'H.@,7F'7G/%4^2V!ZY3/(-*-W^-U&:.0D>
MN8F"IR@NHJ:K1RL8H1'B@I6^> 4=/8F"[?M%GZV.@,)RA\=06.4<C3H)U4!Y
M^9KCC4VY>OJ$1=%U-%^9:I6;&IF;!]DM9(LW*TM&;F$24N'*+5/)PBCC"*:,
M;H=RLC1AV:9$H,B@X!J&Y)WN1X VY'I*$>JXC;(@OL$;4S!_BJ-5,?<SYB.M
MNO4<K%;7ZWG+I!_DYS+%5ES'M=^1UVU1MKN+@X3P2YQC6^*KN@5=',D4K;J+
M7]2[:4-!,O[LP2<D;S56OY/_/&'@_.?_!U!+ P04    " !ZK))9UEZ*%.X*
M 0#[ZP\ %0   '!L86(M,C R-#$P,S%?;&%B+GAM;.R]:W/D-IHF^OU$G/^
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
M,OS+-(.[IS#%[]C936NT"%_++3-?PG2=><('2"D3K>)H<T.BT&2((PA9;6L
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
MQ59-9<'V]V,"L5!33:[$V5D)1L^D="$ICAX3*%T4TAVZ"*4MT441C2VZB-U
MZ"+2#JHG?M!%5; <NL"PT*&+0(E'%RAZ/#BU@,\6A3#H](&13QC0FJQ2;@=0
MN1I^7,#A2(!J.T >OJ!MO4''"PJI2AM\ ("40 (=^$;^D0%E=R 2Y&HXJNH!
MR0I:C;U?=>?C^TK2]<%<EB$F&YVTA#.'HY2-;:15C!THBP6J;\$3,*2-V*>5
MW,LU+V,&1R%8,B]H5=&A<;6#6_1+BHM /G ;X'VY)J@G*7EK"9)O6J_8&PGP
MZ$M<D--TB]R;O"48$54+"O.8M;%,=0SVP0T<A90H\J#N^+(:0&%*,2\?$13+
MRRG@=BSOBB2/2YQN+O!]7EQS7-P:<L4N$[FYCZ/'<E.XH'(?HEOS14_7E$)#
M(K6RK%#7LY1M6K;V!-RR<6.2L(4 ,;7PCL:\06MJPS$;!Z&'&!9JA[,Z)EHT
M]A>^5ON%@SQ;PW#5:V0Z[Y@28EK%/'BA@ X:)W5OZFO"M*1O.0VPW9]M>I>'
M.6;G&5$GT)DHF$Y[S%"E8V>D!Q:9I;$>I3/ :(_"1E \]V) !UCH_7$=+;2T
M1W;DJIP!'DV4342T+"<;G/8VP'S$FWN<]B@&DMZ32R%M3"M0-.:$4KF14TFN
M'=0"[:U*U1[&4LCU@@U@J1/MHNGR2JK49I0>M#SJ; WJ90WJ7DW4,-7A&6!]
M/=BI>3NT:GL>58]I>+/2I"FIWX:<"'Q:72'UX#_8ISGX3K\N]!GU9/3AU^^W
MC(,_UD=Z/VUWO'9I#L'2$J0#_K:QV2K$:?!9N71SWO]]KCZV32&U/Z=?(&5\
M!K_4NZ6FAMB+_ A]OE9P,3];NCX/7UYH!/R%N^?8<X7;9]1/B@2KPZ *'P/
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
M2D2#@QJ0G@;Z*L^Q?*C.?XG*!A8;S SSQNF6+*-YF<0, :Y.;588)$]XPUP
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
M9^6:B35]ZKIZ5I0H@7_];IW+EVY7L!,#Q7);4.YD"%;VK;PF8)A N93AXDT
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
M6G'I6EA92;66C7/7MXY9E",L^.^:AI=G:P. -S-<NN6KW!N@+F0?6I97@FO
MQ0+=%N:5M<N^Q3ZMM32O@%=Z<Q2:+<XK7Z[MEA03K^DI*LQN\_.*=Q\WH,0G
MP>Z',$J+#8HEFS[BD/7MUC>T0\?6(58G'PM'.H>J5Y]*7]V0%4/C->7, +\R
M1FF;JRN(6A*%.6)&RLVIB"V$JC51H>J6B8-A1<R+NLUB72M-CANC>YH=-UO,
MEF0DCU<DRXI-RP\D_1*FZXPW4 *4KO?>J*1-U\G#HC%>)Z]T(UTGK] .]@*(
M2:"6B!\#,M!2)]I%TUDS+U=J+9S7A-8T+<'=AMWR>O.P#%_.*=6CO!V9H!;5
M5:M;C6 UT[:D9GQ6.KD:3J6-3ZB9@*U5*B7:%'3<*-7%!AE>;IT&+%"[U:SU
M#9)6.^NZ3FW@LIX9*\7975 BG%95!?)FCFP*Z$I&#L;$K\/1!G'%)QI^T-!0
MMMOL#5!H1#5>^PTZA &QH&C'>3/,H0,'4(-.,1 "4(0U[!P/E>QS@Z3IJ6K@
M::AV&WD@55NUJD:<=AM[,,>@BA5B2LI93VI/'<SP:E!]S'4K4( %;B7J&V3'
M:0QJ.+:%VWZC$#"&X&'#< )H0QJ((^+;84-Q/_QXF6QW>7;%#K4\Y5X6 )#L
M#MCS)&V-S8NCL#8,SW4!&G'G: ;%7^C4D[/5(:7)&R=7%GYW2+ROP!W]!D#%
M&1_>@_GP'LR']R/RX?WX?'@_F _OVWQX[S$?NJ6IX ._\"5\> _C@P@JSOCP
M"Y@/OX#Y\,N(?/AE?#[\,I@/O[3Y\(O'?.B6IH(/_,*7\.$7&!]$4)GF1@VV
M5WV6K#_1+Y?F892PY8R"A80@V?I&#;FLZ:GUD$B,#ZQ7.)&>52_5#6XO[_[7
M77%!YOG-]?G\>GE;[)>Z\V8M&ZRHB6:)= ZIEZFT#JG7PM*TU<AA:XAZN9!,
MMEN5\&5M52:R2"QM653Y M4K7-W@P^SR%OT^N_HT1Q_GL[M/MW-VPZSCU;VP
M4N95,0!8="L9G@JWFID>1E:'FT">!B.I&E!J+ EK2'FT[<XNM"1C0W;PY7#T
MAUT&NL3IAEV9</;Z,<S9_HQ707,&)EQ](96P(:5@L5B9=5"ZDO%)H5S>QDI#
MV* UE?"F.0,L:J);(&WZR'6:_'&*)JL9&N9J.*2J'%W@BDDA)G:"/M"\$\;H
M[SA,4:WR9M$FR=BV(.<P9U_@!YRF>,U.ARJ6#%]CT643$-'Z_!"IJ.DQ!X X
MC(\OD/N0'DL@4PWH'ZB60,T3R_S:304J:Z)7)IT# B0:K=W_.E!R>QL]C>SL
ME9TV)""0OJ+J;GJ.XEA7U MCM-(LTG([Z-;ZOJ&@ECU!6R9=W%J(:WEOJ#@
M-9";[%68JV@*UP?=:^\2L%9;7OIN[:"V:I$=H+O80W>O=(*HV@FZ?T5,\ZL#
MLJ3!-C::7>X(7CWA]2[&-P_+M-CU]7J7D]4?9Z_G<9B)5PGJ:=4+!*%:I@NM
M]*(S7EX%=B==5 6T4IX\E:%;O*6?X"G,,(/G8QIN7*\"U,0$&5Q@G;51,.76
MLJB!0)SFF'@60R<RWOY&I5Q]T+M8SO0D=U4$QD>U2QQ(SV(7Z@7%HV)O2O40
M%4_]V+RH+E*B\?4[!Z:+Q%LGHH.Q,@D56(V9O_*"NA)L(-'0J#X/2,.0*!I1
MF5(&YDI&'HB%H!0Z04(Z7?FRAT0'$610D;5Y!E!L,FX(_*:[WK(:.I'>;"F2
M:5YJV9>Q<>V<R+.5H061!^4]<SV=ZG8Y'ZZEEA=8]QXY1<E6@.>*]BZ.FP8!
M5OOJ4@_:,*AZX"46RH>>73(X&!>2GO,P</BP9W7^PDZ,%2ZK4\IU]Z?VY6SM
M2A5%8&TO*L<!: =J3Z^QAPU7S_[BR0Y383'R]I4JRKS&ODB<NX=4B0\W\%?!
M7@5W^S#7JN65MQ!SK&MA^[M@R7P@TD.V9\ & 1H(9"F [9>XW5I=9%VKV.O:
M?%_J\R,N=5G]K57T#NOM>9@F-))L@=-B@/06L\\4Q5%QYKN@$M=3J@<,@$JF
M8P9:L5GI\H!=2H</8$:"\S!>[>+R:E/R4!SEMRKFHR[80<UXC6I#B%I"A2EO
MIJ0T<4.&EFIG9 &DVQI<\ FJ5K.XGDMSO%;YGH/)MOQ7 U%)G3$63AW6+OP#
MY.<OJWBWQNL/](NS&T9V>1'OS4/W?68;LNL-GEFU*;U,0=OF*#<N#'RS<:YE
MT ]&_^X&71]53V)+<DSMA7'\BO;7/63EI"^N3*+OHZ3Z[0<?+WP8BF+EK1!F
M]*@2E!73ZOLE3&EW#)GM[)5O8/82=8<.)O!D)PO*/;G-C9"OX#AC*D(<,8]*
M/8NNSZ$M-OK8]2T4$W##7F[5H**=C"MS:#$/:Q'_&++SE6"5A&VS=O+NE;7U
M%K;?SW%&O0*NW+#F1I@K:UN(I2W4L,:&<'@#-E>^+ .Q#GE[Z51$)SNY\XJW
MZF0TICH9ZP6.[@+'<T<;%ALR9@LXLT'B1F?<ZS RN^?QEO*XZ&0ZGJ15%J1D
M]$IO2!4R.#4Z/D8;)&TZ& (--@ ZN[V^O/[M#BWFMZBX0=S;$<\A* &.:.K
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
M.AC\1CD8I'SEG<,6P3Q,$QI3ML!I$:CH>&ZE7/5M)7*&N449@:5;2&1^9,E
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
MH&Z5-0G,4#7H74ZBL,$2PH1]F$X9 )1N/3,$9LU*!Z3?JX9\PZC]!HZ66SM
M;3:"PA@]D+0\M!?=E'BE2MX>YCL!B%7-IQ&1[/Y X$:K3WJ@NEA.V$6U?&2V
M.(*1.JE:!ZIS]/:]COCPS -&2<M2VMN G*O>%Y=W-48'B=W+ J5N!L'D],WB
M!-PEU0&*^38*H6F6C+5V1^@-9G2\# )+J<P;SO"ISC9&3JLD;**G,NRPOOV4
M0VI;D52[KNU+V:&&R+LE3G#, \C0TPJ6.,:T0;79)=&J.!&XG+'>Y3[E4&%)
M]GF@*/0V ;K"'/@KX3$)[N>;;4Q>,;[%<9@#VIM@^>JS .1-;T>'1F2E'0KQ
M)KTH7:E?G%F&DZP\=3LMY1!^8;^Y9@V\],F  NI<FJY2:UV>[AYF5L<BP-Z,
ML%:-/-1R[VJP^==P&0=XDJ$%N^AS.)!0#&] 1Q-@PM674@D;$@X6BY6DKG0E
M8YE".2B>NV4/L%B)[L=O4T:NT^2+4^18S=,P5\/A4V7H<B38WWZE;8!)$K,M
ME/DXMBM:U F55XWUVEMN"8UHM'$:Z$)(I7XP.S^__32_0%>7L[/+J\OEI4>;
M!^ E#QFW42P>5*F!AG#<+NLK*,\Y*Y.M3*S/RQQ^ZMI(UIO-*9O6;=2B]M]6
M2HI?RXR0X,>B':VJ>*U&IZRD+7JK*G3N&;S?Q^QT\B,YBG<L2G1;"J.QKMFJ
ML.>DUPQYN[RVWYRV']N$U&XUV,&W#QS5$3S'QWE5=^(HB.^RP]+<]S%;KR,6
M\__/WKOP1HYC::)_A6CL15<!SMFM7O3NSKU  )&VL]HSF;9A.ZNG;^%B($?0
MMKHC1(^D<*;[UU^2>DM\\U!BV G,=*5#YT&)WSE\'9Z3[*Z3='N1G2;/:9GL
M;I^2'-\G!=[V]Z]O6![2(BWQ+<Y?T@V^YAGKV-61QXQ+X3%ZX_7.3.I$%]J"
MJ(.\W!;P>YAX[Q><WQ--J$[XYAK??0NA?L6Y/W!V/H5K#VOJ0YJ(KK6%M![9
M%;?P%MNL6 -KE5Y]>X]. C;4=J;&+NDGFK#>ZXO3$U2YC(_<95PGKTPK6N<Y
M;1MF_^;I&'.6R8&'_YX2.I/HR?OA4(*B^>UZE07GC-<YV6"\+3Y1#%T4Q8$E
M];UZX"]3?,VV.*>(I^]-9\7K;,M__CA^QVMJNT6;T9(GN[QZYI%$(Q\XBZX:
M)8%U>8X"LWP)7^\?NI$JKQ]6]ZH1CYCK1$5OHIATWG[A/;MYK(7,#,JA$P^J
MLN_!YW4'LWCN;I>"O525-^= 6U8G<:#M^HCI+ 7W[LN<?R_SA.2T_4G^>E'B
M?6%TH#*#IAH6035Y^NP9O@+(Y8JP[50Y[9":5_6V[#V7T*:Q2;Y7Z6N*Q:??
M<Q@)F16-0U<=4&'?4;]3#P"Z;)^AG0NY@7JQ/CBBJ>9PG1K4Z6F\Q?!:;I2G
M-6_'?2C6[,?O0Q9=J>/G)-V>5YO7=)I:!<X5!2XU@6D.G.TJVH+3>TULW4K_
M%:Z-2O5ZU5S2ZNKN+^<WZ/3KS<WYY1U:W]Z>W\43R^8"%N+5B^,EH;& X0+/
M':GSU%#II]\;'B1?)ZQY9^GN4.+MR#ILV9K:*L9LON4Q+-L'LL2Q4*JLF&$J
M9G6>Y!D=!0H*-[SE>__;ZA'"S1,ZME0;20L7T;#%"W'ORU%=#4/N08V-V& *
M6]'%4BD$5IM*+[@<!C)-8I8JKA-4\[U]U*I*P@2$[I+Q0'ST^Y2D.3]E.DN+
MS8X4AWP2R*.C:R)PY'2^I^*Z%GB?9"L4*$^?I7RKZM$)>J /ZT(PV_;QPD?!
MV@XE%M]^=.XJ(Q\<F!HC9;;Z=?4<D#=L/,>2/.[5J1L^!B@I)M('<DE2(%Q7
M-6Q OOI,LL</N_2%NKOJI^6K@@D[A^@_Z+3P5Y]J7.PK:!^#EXH3";?IZ'JB
MP'O[\U'WMJ;6FVF7+SA0WVZ>\/:PPU</-_@%9P?,-Z[.OU-CSY+=Z:$HZ3PC
M9^4Q6'?QWJK:?,<F'",$P@BKOZ.O,-]ZPB#OXFMNWJU05@WV$[YJ^-DEA49"
MM27>R$"M$)[99V+QZ'<N:N%])R#8$FCPC(H#>\D<% 6&M:P9DU3P5GRA4SJ\
MHZC&Y*#,4J&E'J2I4%"#9!O0M@8HN%ZO39]L0,X=3[(*?>].D@F8 F*02$#*
M-,TDL!B$ F2LT.KR0-$P9T6]F!T01I6U A)IVKP5$'!;.IG0[2';YJ^]J__=
MA%?DJ W(^YY:20YA9P;M ;$QM1ZM?:G8HW'3)GT[MAYS//0M1\$U,1T;",UB
M-NU^U1><L,TJ%@3\*<?_=<#9YO6,[),T&R'6@J/^6$8<GO9CT2I?$S)3I;(B
M$PFKWC/4/D2_5X\77KC88( X==+0S@P8^Z;F KC%K*W;,OY+BG/Z\9_,[4[+
MJ[! !6\ 6]2V-(15JI3:VJ=<UHH]J4IWH_89WW:X7/\6L<'JP:,Q75/T*8Q8
M*D)GSN;H7<ZP;S ;VM/L45C T89%9<83EA#6*VE7$*.=ZK*VU;&(GHF>H/9A
M)(7\K("@,TDU@%26..+4&J .=[/8W6])GK*]P296]3RC;_I:-_/JH:[I^BH)
M$G7DKC^F-;>G83JVUM=&[=6JS-56FB"JAV_T]P+>8XDB=443\>[BH75;"ND;
MNB^D9['YNYRWYY5?1[S!99JS2XM%^0673V2[WK-JC2,3LF&I/Z89BZ=)V[0+
M*#NAH4J5#1N)6%4/^/*5/*"RYD$%8UK64*W00-QZ:VB2)IQ].XP&?*#[^S8*
M??%7[_0WI(C3LKD?ISZI\IA4#">H8GF[H%3L_8= YH*G (/FW>5)5M!ABLT2
MSK_7E]CY/+:Y!G^#TZ(XX*UD?@@D332BN$B#M'?WMP'U D[-,/8-#M*K#&K4
M3SS3+_G$LAY=Y^0Q3_;13#.A0"GS(=XX%WD6>Z%2IP-@.7/EJN!IL\YP]=^+
M;%1)O+FP52]E6,!+>RPT,F$065V^"1]9_O?)_=\$)&C8MR6:Z^ >LE<-,7JN
MJ$]0,BWTV=4-7_P6-P V"3!$)I>PW46.KED?J_% IUOP;TDP"^I2)E2)"W]J
MI/R,T@RUUE5+XH94A02UPOJ%;'Z8EP1$,=K8@FN/KQEMQ ZS3(<X?6$-E02)
MZ@GK+ZLB]'0E^C: #+)*-2K[5S"NFF>H>[BLC1IT*+'Y]$/#DM/WK681K(".
M*7HU;H"I1P,!:F*)]H3"C\([^X)H0;_Z,2G2XNKAFJ*4-H0?^K"$A>ECECZD
MFR0KZ^&!#@379)=NZ"APA[^7'VEK_C%"-(2H^KOZB?*T2(CW\#57SS:H;-E+
M](ISLS.'/O^R!@Z".P+;_T/_X".Q[T% S6*>P/'\,<G2?_*FGI*LH*W:-NWN
MO\;5PZ<T2[)-FNQNZ2]5$(1DXQA49A."#B/3-TX=\LV\@]F!&J.,> ?1L;H^
M^W+Z'^C?KBXN[]!OYY=W7V_.H]E1AD4K"0264>0]A.A!>'X0\YKG*C7?];XZ
ME$699&PW?&2[TN?-A>?I<]\[S#*-)A;_S.L%G&?*, :1!N65XPD]G2?L6$IL
M]%.:55FLBI\7O@XL[2=B\&E'EW;'9(-[N.$[W&I56/4X-:>\M.ISW9I0P/!6
M>EVRS+/K]NF"SKO?V3KQ3U#CNU2Z5:=73-7!+EWQ]YX<8\<//K!/Y]>"%JHR
M/MC/G51L;G9X>S]U^93J'0G9&C^,\*Y^.:AP_V+G =X5*!\ >.,TU=0AE8E*
MKR]>;ST$K$EH,$TJN0/J&)5]?[N6"5OA+DC3YC/.IGK=Z!CW!-5R^V>W)[W#
MW?YQ8R>]/0) OS,-B*M8>$%^;+:N*EEW) :_X/G&#7ZNRBX65P]G^+ZD[:[K
MZWUFQ]]7][OT,1'5EK-GK/O&AM'3#]JW$>B>@Y5BE?.R$+3J:-GYPY92+^M(
M'!!"?/IN:/OF_'V[CA*<H .PO5H8?-8#YQ"DC*7*D<=#I3KR]X%<Q= 5&KX+
M#CGMA=Z/K]-[])_Q"^W?[^EXN+%C&E]9US!!75HW:AO8M76=-J.+ZVHAFNP2
MC":6^^MFN!#=8+=!5&V=9KS"6^QV4)S;($4Y:]36J..8FJ*< \X.=:T"-$*%
M*D,+E$J0I6&*R^ZT"! ;G2%PIA8G8Y28FS'<9LX\?88?,%T&;N^2[U5.0Y9Y
MMELM\JRSLFUF3RF37-.64L"23#NU'BZ[M*UZL[32=E)YCHF&I5<X,8KL\+XX
M$R:']H%L<]CD)DR<#MH/_#-[#58@FV35#+\MIU@78?N(,_R0EH:>PUG2Q'LX
M2 +S(,YO >=%7)I@YDGL):]Z#N0ZCCK-$(@3^A%? $]\B;5 L3_Q-X>9?<KY
MPP-FR76Z^JPW28EO,.M4Z@3YAH&A4W$7-?$J+J+ W(K[>\#Y%:<VF#D6!]%]
MS\*(T9 Z%A_C 4"AD_$&],3+V$L4NQD ^YC9SU0-'96"/J/_*<IT0R==G^CO
MZ:.IJ_&2-O$VCM+ '([7V\#Y'-=FF+D=-^F-Y_DXKBW?S7!XA=A&$-^?K$7%
MXI;\P"KT3!#XGS@G)Z%B_P1C4;.[J!<Z<2/Y:W-$;^J+3-@$3D?-!NA=3-H'
M<NG:0JFITU"*637/%T^68 T'B5E;0$E@ORINF:%&@4+04VY;I1!0K$^X^_7A
M6H9^H!=/^Q%-N-<<J%6<<X>$[H)GW*=DOT_+ZGI6MCTE_,XISC:#,##)_4TG
MWOJK6O)ZFK932WU-VU:IRK3M9*U.K[Y\N;C[<GYY=XO6EV?H].KR[N+RU_/+
MTXOSVVAN5+KAAWAVZ]"LK43T;=L/P'/EUJLGLSI+-J#L\N+)*?T3=^E: 9"1
M2Z%"DVI+RKFZN*06=X[NUO\1D7F9="JQ^OJ35%8RAE&B*F/$S!M%TC5(EJ'
MA'0<-R(DA0H84;0#+%)$K,,H1$3$NOJTOKA!OZT_?SU'7\[7MU]OSJN!*18[
M,>ID46B('A3CF! !AS 8Q 1#,PTA];S58 C14K9#B(+2>PC1ML)_"%&I4 \A
M<DXZA+"$%U<W,4W03/J46'W\\0@B91B.(.: F<4J6,2RUB#41/6'D!%YFH%:
MMZ\%2*6KP"]A6IV=?[R+!O":/B.F7W@(<S%M'^&&,)CGVOE+DN[8]L0GDM\F
M.\S:=LNJ6%77Q?8D+]-_5N4,>!JK$01=V9NKX];LOE=0'=MKM =-V(4&U253
M>^7*&Z2VXE;M;VA#?USX/J<K<HA_;XZN8UI*&5RXC!W L+>D'95#HKC>SN97
MM#JZDZX7/SR0_ .3Q&O8U'@_?9=X5]U!GA'T"VYXRR\[R[(4&C,T*0@-&'SS
M"QJWR3MYH(DF969 O8#5U=U?SF_Z242BF1!:=#YQZ9Y1NCXMWR 7GSW.YCI2
M8B&D35K KL*=R8&2+6=WG&3.Z7^89-M*@*,D"Y6:@R1C2:OS+]>?K_YV?HYN
MSN\NJFT[=/UY?1F/?;H@AGAUY>3XR%3 Z/#(&:XS!QKQC&ATT&:C=]?H&TQ;
MEVY*O.75IKYF:5FLOR7YMBE^:AB/!"I]$K8$)!TLK@3T;>$B3Z":91:; J-M
MU3%452L1IRY00Q]+L HLPH4Q+2&,:!+U J)$'!P3QDSG2RH\:?HZSZD=<(?^
M\;4CN:Y27O"7N'KFV2U^I81E<9%=\]RN?\7IXQ-]X?4+SI-'S!^>)25NSX74
M7C6&MO23)2_7%HA\K4M_29"TL N^A#;[[&)M6ZVWVY3)27;H(GL@^9ZK1_3_
M)*-*!"EPEX;C)-WNX@V:9O5=JDF3#,+1>+XH%@NN+]^^[45&C3(KTHW!(!A#
M6PP7(H';$GC9,LN7#+W("?T2/DNBL&U3#(+5R%?)CF, C &*-FNO.;V,X4HM
M:)-LUG7S>KTH!D!N4/5+@6R0F0LT'(I,! 8>3\S?*?2@8-02'\]NH&#5=\+'
MLJME 4L+9VH-=D./J)=KX]8<+&@6WW27\[1RK[Q],G^C)JH_JXS(TR^H=8-<
M]96J4!FQA&EU^Y?U#3L1N_YZ<_J7]>TYNKZY^O5F_67ARA>:+B2F'WQH0V+:
MOEW,B@K0V"6U"GMHU'%(S<-Z&AU/O01?A"ABAUQALG0<$'/@.7ZB/KQ-3W-)
M/R"A,TRRH]H>Z5P34Z1*RRAY2NE'#+E(@0@C<F\]B&]V;X,VZLA!ZHJZ],M?
MSV_1Q25:GYY^_?+U\_KN_ Q5$4JG5U^N;\[_<GYY>_';.?KI\]7M[<^HOOOW
M\6_\\=7E^>5=!#%+'I@<!S)YP[L?W60O;!+R=#R& CI<>;8A@+74 UY5-VC
M7M\-/4%#":@1$=&HN+RU*,;5Y4QFP9&YBX&J4E1V 0$[5LZ&!1$7? UVW]LW
MDMW@A1'6W-;R%.9[JPOD7;QO?_FV0GE+S$]XM3C[\)$NR\[X<$R'ZO7=Q=5E
M- &+0'@DT*@8W5CSDCFXV09K,K,XH*\%RUI9E.F>-G%\OTW\L/Y\XX>>!B_6
MY6O $ZDJ@QP1K]I_\N2%ZZ(X[*L]KV7-2M(K1/<MA[ ?TO1AK.G8F4\9UIO-
M87_@!B0;WC^3PK0R@Y>TR?F"HS2PPP6OMX$[67!MAMFQ@IOTU>D3.WDK4)JA
MG@0DFL#_Q/A_;G*8WK_RQSQ9>"Q'$'ZP%9X_0%C"Y/#!2:CXY '&MF8O'W-O
MFIU43BHH!#,E!:SV(FL'<.91H2+3XBT3UM5GDCU^H.KW/.5 +(:JZ%5)V14-
M"B8F-N60%5"9%32!$H7*%;DB1Y 0E-^FCC<%J#^FC%)]N@-KP?V3JC:0()>4
M9(O$F+Y)T:&G]TUI8-HB$'=LHDV9KT#+WZM.>5*7RXIF0\*\]XE#!XU2#.C8
M!CD%EH<9;*H,4VU>6*M=>45W@GIE43O:-XX]58X+4  NZ.-O<(%91=9UMCUC
M-5G),]LWJVLW?<'[>YR/0&_!47\S(P[OVN+&K?*U/S-5ZAKB>@FKAHCOC_7(
MT.\5Q<(F9P,#XM1/X_+@6L9A77![S,UB<-<YV6"\+3[1K_@E*>O,-M=Y6\><
M5S#?[0H6'TCRDJW"6-["HDH1/8(_D+3Z4WM+\S1BH+?Q-7#_9JB,WU?ZJA&
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
MRJ[\<$0SP?X]>*,%EZ7AWJ^55#&-E^VSS5D-VQ%\'JMM1[0CDN$7C'> TK_
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
M0'FX8,4C*"2KX &L*JMM&<C4P%2C:=%9N0RVI9 ?J*OHD420'L,8!Y(BM*8
M:LZN35AEY6D7!A[H"&FET1M]]<@V+((\2-A2;<I$DR@L+#85(TT8@"YZ%ZJ?
MG_Z.KB5&-B G$)9,J A RR3T=0+=(Q*(-Z^)P!E6['_9_9X=2;*EKPE(>TA:
MYD#0CVW\_IA.7LX@4&<#7V"1B;?K\?9ZR7W92_=Y@NX67WZ[]K_R$H<=".*[
MS%G? <F_).7F*<T>!\^K>R%7#_SAQ-\!R5-?Y+21%^9*F?T;A;S$:=4:AYMD
M%O)7S3VQ8;6HYHIF\<?N B>_.<:O=K(U8I*]HF_I;H?V3,[23@$*QOJ;8\ZV
MH;XR9B[6X,+8,=G;'!<X[5L3U.CTES<;6:@1-B!J;VPR2_WRP_P,@!6S#4:S
M(*IV\-)-O;_'YCK%QV2W([3%]4_D(V;%@Y7+)GLQPL65C1C06;E]^P,LU*P:
M83ZYMQ"[.D_RW2NZ/[R2 _4TS]P]4=P_TP_YQ"Z>E83LEG8\GKB3+AF<,2Q<
M4YA+DZ\\CL < BYE[1L1PB9DR^)&0GOTQ67PU.=,2OMS5WW]A]T8+\CG-9X%
M!^,;O-DE19$^I%5*>'9IU" <L-YOK5ZQ*?FSOB]XS,3(PD.JJ/LPC I/CQ;R
MO4$&_T -5#G!("I7IT_LQ+A :88,XX9_OR&[':I+EB]\U!+4/L@\>!SZTA":
M^G[VW9@[Z.0F9 /GMOEZ4K2^.KU@)KT[;-E^Q37)JSBALEKU-G'NTGP6O!S@
M V+E[7YXA "0/7ZWL'AHD?@JQD?\0'(\?F&7*K>&D@R*WVHE!2Q,:O@6@"%+
MKNUP+6*JDWS,U75-,6A8[=0.TH.X$R>!IJ51(S:0 *%57NT(9"7#,"SYA<(3
M=,\%38:LHC]G^&%0 O#$9E5+#^!60<%6T<"!HS%GC/_U"OQ51/Q.ZN)%8+'V
MP90N$;[FD9-+H0A^Q/&/XC4+WXT^;!<08CK7#H"S!1WT^B5)=ZPQ=-G/,E>Q
M_?M;O#GDO)F]I>.O.1UHOF8Y3G;I/_&V&W:F:RU0F<T-=!B9OO?2(=],"?5_
MK2P^PX],G&KX@&J3\BH[B(Y5]X!?<%]Z,(+%*0D$D]&]=PC1@]OP;\>P0,=3
MT!8%MZW^"7G'?-+!Y0,E_,#$GPS.A[A,U+-+)K5=^BV^P(O;0A4S@SC-] CG
M&;\F:08]SQ#*])QGC&0NY Z%;[:4)QPW)H03'.KH3S >Z9,CG5^(\0G@O53
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
M0R#H?,Y6*00,ZYE=LP'&MWS%T[R(ZH?/ 5K%9"XD<F/<!EMG6^UAK@NO;@=
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
M@#-\\[9"3OF-M)JN 0R$#9.J%B=H8O/;FBL"FW>$DF2=8 U&P<)!+T.VDG!
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
M7O2H?H7A(P]HB73X(&LD3P:L =FJ^0NQ/Q>NE"SZYD3^K8:0ZE,TB%)V54!
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
ME*&1Q%"9+1UA[(8VXHV!432DE9PN7-)!_;R0!PJ#=M(+"'862.T$[W>&;EG
M]ESP]@WY=OI> #'AMGJ!H/T#U;83C#D!#3DENSRP<XVKA^J4@\[[</Z2;C#5
M_+S#=,X^L@93\OJKZ,E]K%(G'7QJ9:A0:H1&_./I4\:9F!'69_]L_5(Q,DNL
M.-5FN?3!@S%JB$//#@U0Q]F:G)F*T/"$F0:9:O(")IWJ7)I \0U"33)[ <6:
MYPS%]+W]YR0&FIQQ9@BQF"<AX  ,C#W0[&F;)[P][.@DYFN6XPUYS-)_XNU=
M\OTCSO!#6A9WR?T.W^'OY4<J]A\C'#MR-]G5;+F]LA/9*8//ON:D7Y[(R$'<
MBOYVV"4YVJ;%9D>*0\X7"H>> %0FW]%]+6+I)&V.X"+^/3[*AF0GJ,N.Y-*
MF3$.E/3-33$DNNE<I^%"5P^HSX<H(VHXT>^<%S%FQ+F73N@U/\QEJ>3FP[EO
MJCFW;P:0>LY:,13&_["20OI=X7=1Z(:9>5UD;&9,E>+B.DFWZVQ[@Q_H/-ET
M[F7)/YE]&?/#F*RANH S,+L6&%BPC4#)+"SE(MC\"Q?HF0KA,3MY)2::F9@M
MU*9&[M#[,E,W%"4P=JM&S(YZZ#F9I6I8O/?G913F%2?BK.BZ@7G-'?'<;%;@
M:^=GLR ?;(YF^>T@9VGFJN%0SX*8&I!3B->7 WLP?W>87AS.H'43RR><L[VX
M'#_AK$A?<-6(SZ0H^+/U]N^'HN2]SN.R:.M&]N$CHJF<Z"3"JQ26@T;P.9Q'
M(^1UL5QEKNHX5[9GEE2QU_7-IN29"MND5=6?G^@DK_B9WU0B3!Q*.GE+ETGT
M 2(! L:H6):#M*Y:EG-3EK ,H%J)'MK!;8)52^08'_ VL[Z?&/O/)U4?HYZ(
MDR9DG(IYQQ8A*YNXA$GX%D[T^([^$T!'[:#F4%O".X5S)$@&W;![2G)\@Y\I
MY)^2 E_GY#%/]N)4*T:TS4:<FM9K#:82#;_!9J!-OLS2,J\X";NHUA!M4<+V
MRG(^="2H8,][C]D%<R9DZ=TS(RP0VRX;+:94;-W"22\\*-R =K9,U+@#[9<:
M::@C0@U5)(DV@"$EVV^"P=1T)N%5[>^YY)+IH_^QSC*ZZMK@;:U4[(K-.=JJ
M?P8<?I6RM K@G;.Q3D7Q+#,1/-%'2XP8-4H:\EB<L@4JB%NWC4MJ:9E[9;4,
M%<T 0JBJ@,;*?.''W/<0>RUMX\9C\>+A,"@M%@@.0ECO7I+-/R9C"9WS4]>V
MX>&B9TDY1K,=4^/C#9F\+,Q(![RGMU$KMS9S*2OV+_2-+LI0<BB?2,XC5&2S
M<18&S&5L>6*GT].__>W#ER\?SL[JG$Y+#PQV:"+.?3VR3"/^SC@MU,T#8:!Q
MPDH? 'C9:,&(!9-]U*='C.&-(U,V:(2"IN\!L]7W #A5-M7G"<L&D0+7^:%U
MGAR3V[>-R1GA")LE$C_WSZ+9273OG'H$94/J-G^DAMHO:9M2>(#,DB;Z%)G=
M].Q\*=J=S3Y7++W0.AYO-(B]V^R2HD@?TFIW<7/(<_H.BZ>!- ,)L>_)<?(X
M)6,ODYR!@L!8A,HC::3(!X4\PV0'O(YN$ WWYA F344)!C'O))5&[PR1L5*G
MR!5>0V1)7-J;0E904(%69<!;G">[B^P%5X>25,-ICK=I652Z;WC"1=:"TVJ0
M&6'474!3Q\%!@%<V=6M]\)4?7)L@3\7N)I%///+V46\.\E )9,EG:XD\@&Q3
MR:QMF*>_V]27@N^9I&3'=U5(3I< 64&_PA9]2\NG-&M36;-GY)G*+EEV^,WK
MAJ7$3A_0CF2/.%^Z\(0[F D(O$8)Y:UE=9GF'9LQOV4!5;UPU@UL4ZQ.1FT[
M'2</LJYYZYD5ZKA/4,W_3L$O*[HQ-_I]RW0X?S\3Y+_@_)ZH*GBX: ?$_A]6
MY^U@,!@H&KIW".X(< TY5_PMR=-J*EJG=<WHB[V>TH&>[%*VR[<]3?+\E8[K
M58[O=5'@LOA,>=)=6J:X6-\799YLQE-(<+GU]P:4Z^,7P)H!-UJ"-TGJ2( U
MK1IYJ$OGS272,;0GD_Y52T65V!-4"3Y!/='H]T;XPD?L\ 9 @F)OZ,_ =+1N
M#KK545@OW$8-9)/"&^X?5JTM5LM+GGHKX>1\/VCWPR(!!KOXC1'T].KLR^E_
M" ,I!4^:4ZG^$Z\=V4X0_&G31+9\TW5$RC=S_DY2.E]\H2H..5[Z/$C0%43]
M#4?[I1U1MS<Z9@3L2:"SFJE0TSYD9S#LETA"_RPZ4':,HN]!W^.1:1L!CD(&
M0DUZKS?*U06.CJH+G7H/U*$_D3(G6;HIUMGV[/):[-N51(V;EQ!Y@4PH$][Y
MJ]3(42CGBF](4/<@,?[>(Z *Z3O,*L2%@0702**4[P (-KZT#_GDFSZ.Q5/Y
M0D,V!+EB S1F7#R+MMH0L]KE"KEU-==^E.<FD^'.4>1K3LN%I/-^C>&Z+_C.
MRES;)>Y[(-W&A@12\6]D.((J()Y"E![Y>"C2#!?%6?):?"+YU7V9I!F=H=_@
M_SJD.=ZNGY]S\I+LF.<_W>$D3^AGI(3GWU,6G'"=Y.7K"+@A1(]*FL"(ADCY
M#]&28*52 !NGK2H IFMU@Q^HKV(VT12OZZJPW-=:>$7W*A%3HPCEM2:>LXFK
MXK.W3:.LKC#/U?%< Z^(V7^5YNDQQ^^^1'T0PQU76H V&'%E!@@MDRH.<$V/
MR?/ 5L&!;-5L/F=07:<1BLX:%]/*18U@M!ZXF-.!BZFE(R[^AT7; _$(31JH
M@!!D/_DO"H!;-8LY]RT9=K+PPY)=9NS'8L0AUE;L_!=O#B6=\]4%H+YEU.">
MTN=F??<E>?V4['8?\8Y\N_M&)Y"OUYBZB*RDK;L^E%?T?ZK+CE?/;*Y?W)&/
M^/P[)4D+:77(F;2.5F3!M4*XU\"-#+:.FZ?=6O\\1S-Z[GO3J6OJT259?=F"
MY'\L$&G4HPU]<(_I_U&]Z$__X_^B_Z+^&S-ZPC5QGW$HV<6*]BHV6ZH)I:7-
M3M4^>65B<=-"OCC\H\?J\-A7AG/YEO' -*/ABL>MP V8#&FSO/"1N%38!>I,
M#8[!F0Z6M3U]J%*(6HW=WCSS>$PIXEI1I1;5>A%5C*XK+]KH1K7R^G9;J_^'
MOYK+*MZ-PP):8\^$";CE=_@&+^VL_K"BQ"G9-M.V\4RMGL/5LSS\P\?,O\Y[
MV^X%<O5_AKN*(>MLN][3&7_Z3_XGN_U'WT-9#-"5O>XG>W8?GVJK#7R%[-@
MJ<-SDB>I [CMR>)9 "@WR^:Q.VS9IF)9Y3-JY3.6/'U\XNO" R6MKG\LO/)S
MAB,!@,C0]]A*:IV(6Q/FM@N898ZK9E"+H N//AO?SN@SHIHSNBJ!BZ!=,I.?
M%>Z><VO7[^8_27;0# ;U$<IKFG>&X(7!"YKG*<W8R=!G3&>)-VPDOGKX6N#J
MKIYRSF;/V.1ULF#T2KMAK <^CY.M:GF^#3M)DED9GV)]( \?NBD6HI_NL.,G
MO3P@[*%2A'9,T](3, =L$:]>'R7B,);1)>"P5#L?L('2*%GK!((T2YM40Y-S
MH)O^<J'BBFY*-1M^91F20@/8-R.2]??QGS19Z00 +ZNC7)V2\G5NAFZNOC9X
MY1YW .N%LUS. M@%L HY4[K!.Y;4@$?.K)O0:<E%+2/:^CMH:'WL3"D:;G P
M4B,U*0/N54U3A9>BEBJ:VS1F_4VLNV5H*DJ^UCI,I <#%9R_UJEQP].[@E(P
M%$&ZU2_)WTE^>BA*LL?Y+\+K_2J2^MW$)#XP%TD$7R@JE$CQ+>6AT&Z#KA*T
M9V1H4],UI=U9 =HD>UUX?:?L4&+8 4-4BZA;,,M%A4 (S*"JDFZ-#3J$?AGB
MX9=(;O=[04$R3CIAP7-45+T'1!I7B7PK)/QAU?R KC)\[   ZGO(L6R]V>0'
MO+W%^4NZP<4IR?APB;?B%/FFY/4;ZLE] *R3#C[V&2J4(MR(O\N^])+L#FSS
MLQD)[Y,=7WX73QA7M:B:)^1^ESXF581?FO$2.BPR.2>'QR?ZWZ2F9@=\S\DK
MWWEZJ!+;UPU 1=TF5OGJ)=WB[;^@KW6$!X7/#K-Y%E545^=!+#ZZ/@QG/_?S
M'OZTI8T69,JO?V+D&=MDV(USYW>I\W]>>+ W1CEQ0.+0^'6<K2,P4Q':G& F
M"J::O R)3B!J,M30H8XPDD3U09 FF6. 0LUS[F'ZWOZ+<@--SC!CA8_YHQ98
M"V^*@L,I,)("S&2NFD&EVJ163F/4M,,YC(P6P K$HD/-7I3:=*:@8%ZMVXH[
M=11=-Q<Y0?>'D@[[)9T-E(A.%7;LMX=!_9SJ&/<$2:8/\GE#/#5WS&!%;'M?
M:'QBMK'EJ80'12[H1$&MQAVSO2E"2U0?;L4U/X!"E'IFX LIF#F!^ETA-B9T
MBMP ]8?5U<B7O1GH!$--@/'_.F?#0_EZ3;NP7&?;\_\ZI,]L7%3.!$RYAG,"
M/1> />B4A)HG&.K5&8N1&+>YPW,M^H0AC7*S[0W<B'\+$PEC5!)WR AM6B=@
M;-UF"F<R!M"IAZE""#/H34>N6VASABK5P'F'[9@F)R%1JIZPA( IS"3&])N
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
MKRR"?]U$W!_OA;.^I^!?UP],S"E1O ^P)9?/S)S<13=-I>$Y'EO)2C6U8[B
MP4)=.>'[%7RHD1))"Z#,J6?S2L$:9@QCZ9L*;LJJU''+.8R)>#R'9"$9#>QO
M.+>UQV-#'-.3R4O[0@"\VDNN90YZ#WDBGU4N^BM+_Z3IDNVY:UW1M<*OX3"3
M3]65F8L%<).-YP%QYJ$T$1CL%T69$3%6O&V';$PR(H*3,"K2:'!F/$-+2<EN
M-F8$";T,'T--.^/&N+0Z*/.;3LE,](L+>F0];M=Y)IXTK"KFTU%IK$_?WE1J
MV+_,29LP/?J7(,HV4'8'3N=\"E:0%(<TN7KYC;*G.#ALPU6PNZ=//+YX"!YW
M;=6T)9=/U9S<Q8282D-_C6 Y :6]L.*WN*;)*@X?:2+NUU6G6S8E WC1T*RW
MPG\55/Y_?"%/-=9\ /">^)6 -089 BZ:YL&44VD0[*8PMC+@A*FVDE'5@(>B
M#3)2T0'*ZY0D)R5_">*)?>0D8%>$EJ.B'?60J,$$/H<1O4GI/K'W?$<LS+U?
MC<5(2E]*G-(+MB>!80*:/!?PD83P&=P=?WCYF<WB&*5413BP*4YNKJ$H3T!2
M@.6_R,.6CZ_&P"'-+,EWO=;YI;C"B0K\A[4-LB!)&)< T?J/,-V2-8-0G>PI
M7+J$VZA\#KDTQB?(8K*'B_'!,[AM)KQS/H>3,4?'6F!ADCI1:6V52FXVEJDU
ME2G4<G1_?"0=72'[_/*5PB\+%18<3L<YXVN#NY/&4X<QG+5B5UES=+\+QMD7
M'F#N78.U=W:UZ-5Z.9?](]VE'] TC4W5 <HA_?%V^:DHV:"0VP*IYNA6F2/E
M:(PZ(@KFW@H>]<L;+"[21[YXV(8)V17A915=YOLN587<?4.OCG=A\KV7F51
M&L)*NQZ)QH)V%R91$!Y5)^D5X!F2N*61!@2Y@+%1)$F%M[,#V$#-) 2$(55/
M&OC->"64U()LT?7J@.454ZBG#K,D97L:7WX16PKM0X7=WQ9G!MO?.AV0:C)#
M]^7=_-4GG3J&+^XKYQR0E1Q1..!E7@ML8@^L6C$V_)A;)X^: ZN#15T,D!<>
MZ:AG-V.3)8>#FL4R7Y*_\B^F/IEFOL*J\Y/Z2^QZ^K%[S@B'&X\8ZR[OZ:^L
MTZ+Z\"'+7A^R[/4A2TP?LO3L0Y9F/J0^O$+=:A<D2;@)Z9H$2>5-5C-Q(.WE
M:H.PXQEW W&I .(2VX$L?3F0I:$#678[D.7,S(S!"@\X$(TE1MW *OA?]1J<
MJUZ#<X5I<*X\&YPK,X-3'WY*06M[Q=J(['C,W8"\4@#R"MOF7/FR.5>&-N>J
MV^9<S<SF&*SP@,W16&*DH+4U9[R@M6*LN[RGO[).BXI:43J+V8%>1NM;N##;
MZ4CZAA25HCN'.%4H[>"(7P%:+41=A%1%(UKY<82D823KB^5#Q0T-!H/AR$N0
M3%W N6\UF>;3;Q47[1A=%1)5LO(!#Z3BRCW<C8$!19,K((@O9V*SG*"@JGIL
M@P77:L8]OP.A<G$W=R,<G!\$D%;?RQ[^2E;Z494(&!K7WM<_'H>R"=AFZV'+
M5R5B>'>PF[*V69@/F,UQEN%%/=H^['W^BMW$-LWQOJ*"JQ?$>-A [A!A#I;S
MQ@DZ1#"-X#7=T#BFZX?@^3)):)HT*[BTX*4Y6O[2P=$N(!]@CA[[Z\E38E^'
MO*A$]T@W+.:^?R<6$D[A\N3@>[#+Y.%VJ!\'Q7;$(::U9$S2X!G.O=.4!&D:
MAX]96EP+6=-UMDI#\8GN#RP.XA>R#C><D HVHN1Q7M=N5\QHXK1#%VG,' Y-
M/1P@++512X!G0.-X>TU!+E#^ !<A)2[Y,)*/NY 7I<NA9P<Q13B B#''T$#S
M-[L'",.";/$%-:CKEFKR,U#(./(*(4^AP^=J+>ZA2L+MYO>$"OGJ &*8YCB,
MZ*-!4@NU")\AQ:!4'6T98%(K=-L(&DJ7?Q0X\&^#@:@A!D'OV>9]QE52A!]3
M;UB:0:Q#*?40H%1/-7F7D@X)&P75Z''%L#AW/+=CC-KH"W)?AZ4@.6M0#L<=
MF*C$BT&&GT7OH_\U1V1$G^"JKTXLTBO0#9/O%O>WOTL3>+9@&PUGJ!N]C+LO
M>,F6W&YNHA7;TRN18>?_YM.XB]GW,.%>6K4#;,V@V!JV8."T V@L#W$SV5JV
M>N/0DN6B(B2W&Y(/)SEM\0E<1TD^GVU'>\0Q' RT=BN-F57;F+;S&%<!$/?&
M;60C8K\!>_8&>T-;/07BIRB(KFK^;DUO6!(=J1V\L3C\TZ:6,W N%]WJ%/\0
M/&:[("Z*X\B.\65/&U%%^A"$ZZZ^BWE=V"J )>PQ#8H:.?1YM>43I9T-&VO;
M<%,?A[4&KFGQ:8WF\\:LC$M0([:CMQ(Y;F,!_0;UEAS-2Z[/IFO]1,!W;"^
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
M?5/1ZHJ]9IPT XR*"5G3B.W#2&Q#AQ$)R$J*DL>VTFT0U0K$ "L*+_H.<9A
MO?U-%@E.4+9&4DY=7=\<F,P),JV2O-H\JH*[AF+'TPJDFO7&,I'T >K-YP2D
MH"!UDOF%*J.!5U4#WC=Z7>NW&S\?]X#'2"8"<@= ^PH .@$V<<L^\TP]/.QH
M<KNIFLS"U0)5U7+-\659Z,'Q;@5;!]AC%NW5%-53U56+PZ(:!X%18^1LBE[J
MXX!9+56[,.P ;:U0K)X41 VB')L\P'ZBMYO;'Q$WS]OP4!PPNXF^98])N Z#
M.*1)6Y?,*0NM,J%TTB]]0?@%VHUEJS7/D-6B=::[N-N10-Z1U$;S5",_%L/Q
M=[=EG" *5UQM"QDU2MGY*\]2@KA6QC)(VF?(&_(@HUG5N[\_RN[OB>@ /G6!
M=PL0,S=TM6R#/I/*2I@*'E&'D+R5N5 L[0$/5E( [$N:ZFX$AW6=[-5 6.7?
M_&/8M3*^^3-RSV;,A&+@MPW=8T/>]@"O KJ3H!;U1'Z4<K:[+ V_TV]EZ45%
MCJ,WN#AQ/S#8Z5!F+V_$,\9:<M0G+S7(%_5!I!HUFX1&<]&9^=*TSEGV$E;G
M*G7X^SM,J=",H6&*XY,XVJ#BZN_8FK8&]!-V'52;">H'%U1UH$@#Z2H2Y3DB
M;^B^B5;PBI)>T_R_-]%=#,V7TY=Z2>:OM UW8SKY  SH7!1"6PQZ:FXJ6:DX
M9HP6#UMQH4H,)3^O)=$O198<[.$5HJA=+KDTRY=?D(BF9)V):]OYC2P83)\/
M= 6)-<=0%JWS>]W!,^'<UV&>@W,5BJC8C"4_PG0KI"W_?7/WC5RNTHDS<'.4
M,A< -95<FT6I]89"1U,0'!=B+!)'-;B3N2GUXKJN%W=U3?A8:0(G?!6P53@G
MS[AUS+:-GXU[KFTBTAVS[Q;%$,!HC[4^>XR.#D_DIK'0_>F/((8 [D7=Z;AO
M5-5 MGN48T/'+J:HK3S[!/1U>%33+>2WI/AZ-OG"T%(R@^=^U/NQBZ+> ;*'
M(^KKO)"M;S>%H.-W=IU?5R_F6E\[;KHVN/EXQ=8EH&\G]7C\XK[9GNT@!D%@
M_:. [PHR/;FE>L@7,B$)VZU%/[A7V@Y."26FL?Q'.[&-D?7MU@X6V)A$>V75
MR=D(C?G+IQ;^3G"=U2^*]!?:_95/Y[Q1WNNT.6LO<N4<2^N2&YP36V3']<5T
M>5?!ZN\=>[K=W,9KOFZ**&Y@E/P=RE$N2%0PQ3,] P*4X.RE6\AOR>V&Y-_/
M)HP;6DMF\."; %90E#CNY^@!)'A62RW %!\5--BY00,5%:A-WK,D97L:YQ(^
M/N>MB1_"?1AQN=]XB)QL\N.VN:EM0<R6O&@ ;TSNU [>4!IZ7F$Y 77#>!M^
M12#(,PS9H%%R(0S8D##AV87L4,V!^$C))MMMPMV.KIW;5)]J3F(-<X8 O5:;
M>T-.5=-[JRF,K6\X@8NM9%1-XZ'.LJ%:'-@%)<E)007JQ!<RTGV%:%<$3J/"
MW3'4LGUN[C&8A60TJ+=1?E&YCZ0V>!;IZ.C(GAC4/B/%_'" =:2H2ZZ(%(?)
M,35Y2)KW2%%S MI*K<5/*U*49T3>(L5N"Z,-<Y6%,8%>OY49XJ2T,GI3&%O?
M_$2*NI)1-:T[4I2:=4J1XBAHUXP4O<(=.5+4?6[XD:*&9#2H=T6*$N2SCQ2]
M(WMB4&-&BK]'4-+N*0K_CTL,GJ]H1#=AFI1=^HI[+9?1^HY&P2X]O@/LPD(^
M03L6+EIM(Q$]<G28A%+1K7F*D\E/,4N2VB'DK,9-'"A^E/PN.'2S!$H>Q1G_
MZE"P$D%><='L LQ#&H01.$6.]HRKL/@L6!U8$N9U8=+@;QX1RC_'-,UB_L=
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
MO[5R&'WS;PQ%Q$L&<=2T'<6?/![%O;7*JBB]1R\X'YL-$<AH6@Y!_!M: "O
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
MDO#@_-<3$(>*JL+#J;_;<VU1I+HB%6& VF%5+03ZH+/I\V'CH.RT,F4*VDA
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
M-7$VX6?5&*PEL:&QF(- :DY@A-FLO;&PM>GQ08N1D)W')B&.WTE1H'*\*,&
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
M/7F-UHE?U5'RA1"2EU&2"5[U!,%V*0QB6#=^4D_8E#Z(=P1OLO.)($W<Y6V
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
ML\L6O\K:VI#C:E0CIC5:=N6'55HZ?%)!/JC81 SC5Q:XW=6EBU6Z"3)FMA/
MX(5AINI!0,<3C@GJNW(I,*JD36*\EKP%+]Y?=;F ?+AW6'N"AZ0@*[<;2T#>
M+IRW6A5E,)SNX'=;Y;T$G8 '>K2G=HZ/3_;,DW"(GLH'%%=Y0A>4D]<H2:FT
MB:?R$*6HECS/&N@T[9()E9IZ?A?*0 XJ]Z#4N@ET)]F*H+A',4I>:YY<3_X>
M+3>H;.KOEV(S &HR- B2)FZS9SL:;W")BFL<U4];M#=4LDUOK#B6P@*F28:L
M!B;7=@2F%MBFO)@&1DC',**ET7_(_LAM^8SR3B!UH4=WYN<N1R]1LFH+U!"Q
MU\0U5(FMD$;+75E;A99N;1)GJ.0F"-IP8G'D#9T9&)T1QP9"&9H5A=Z'UD7>
M:\C&I*NR[70'LROU#8B)2R''I=1]B8GO-6I'6JM50)L :S:Q"+)F#J.5\K'$
MV@(81RZY?0UGNZR/D.<ZM\8Y<;!<NA <JKB. Q!>5@7?K3G@DJ7\"(!R^7\?
M)C]\%$7U_Z%+OZ0OX0, ,TU^*P\BUGN<IHCN?;)Y+F_77XAO(W<TU1MV07*%
MAF'HEK8H-'1,I2]G+PAS=.T<$2KBI"L$<K+%>=D6"6E]:DD<5J_Y+A:KVCP,
M[3,4BX8.JO>H_YZQ!R[/N%"5.S_G6*9*3\1%7O;$2_ZU%RWY1V];18A=4?U=
M-7D(.Z* VRNUYI-M%K3YX12B,A3=3$6GU*D*,J]ISR:SF!8-YT@U'MQRHNR
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
M7<K19]?'<UR)8BDSS(.Y,;[V-<D1GL S^V"3&J:S*I.:BS'</#UP/!$K1.-
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
M;RVQHV_.9@M+G%A,^G""]!#0B3%J&*X9F4X&+%(^AE Z(SMH%*Y )':59SQ
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
M@FYST=&_GV<'&AK .\O6/3& D\ ]YI[IG,#'>2T_'5!L!=19]Z<!\Z@JY S
MKH9:B/P'H9B,>+]R.Q7E=!S?GU$]I5']&134-)8?@HHR(J2JS104U'$<=#[]
ME 8^[:NG:73>4#LY(7H9Y:+0O%9;H/;Y$HJ?1P7A 7B[>G@P87<9HXJ:JJB<
M!Z>/"ZI@R*%T)F_ $+I66Y$^>A@RMZB<6H%R"YIZF.'QCW1!1%/AYE8LDX"X
M%^\H\,/AVB%963!<!;&EZ[(!7V\XB]+X]S_M&)F-V/J_9[@X5K8WHIY*4,0
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
MKSM[ U$8/)\,1W9"0,W.&MBAX@-616@%>UN511EEJR3;S%#< -2)Z9FAI)/
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
M==(=V=)M5T6H>=^W)_LPGM!MXA[+W0YN]Q;'GF+B>26OO8!(Z!]8.CMT!QG
MYLC@[)G6EKG*.J>/ )P4!2H+6EZ\$62:XF]1%@.GH09"\=Q30O@Q)IR^C!W,
M,B5BPW8OAHR/XS#4>)PG:\(3&8$D2F'S"8I%/(GD6#[&S%&4IH/I(J<PR'0,
M#K?DAS-"?5(6L-DPA1?K?1_^8V@X5T(.=+E/BT:([Y=&:[/ZL;&5#\GG4_9J
M>6T0^1$IJ#"KE5R1AZT^CCH+I.5(J8<462ZVZ52GZU+?)ZM_5D59%YR$Z32O
ME5BGIZT^ADY+I.5 IZ<4Z9=\<%U =N:AG"<*KC)TG.#XGX_!<:U0ZUPQ<RD5
MX9[#7Y#M"'UC='_7D.Y21GPJQ70M8NP>0+"!T?=)85]L2K/!2O?Z9_\.O2<V
MYRPS %)T44.A/K,;AJFV "%8T$YV+T&Z\).(Z@TJ)4GG(M!1(A0;U!<^;]?3
M\+$"[Y#F GF(FWLAHU:[LPTMZ7 6Y?G[&N?U S$R\<A;\B0C:ND\?4YY^+&)
M;-CY<U :^FE8H+Z#/)*<<$A->?M;ZU_?$RGFKX@^=',2QWD5I47WDTR-M9#Q
M-%L1V6$HNXD$9]!_17+"3\[O<][$T0>SO@[: &:!K*E Y_E-#T;#@=*91Y_Y
MG0=YR >8LF?# K5M_*1@OWQ$Z]"JFWGM+N#&7Z.+@YDPEJ6]R$*A0630!>B'
M\KC+,7$=RW=:VKDD[-/W75]HG%\VMZ0->3-&T/ PY@%4,C-HMZ!K_2C&/(]!
M36B_1F2R72?14Y(FY;M,_=C0/)T;0Q^&H@EE,(-VC?NS6?K=L1F\RLC4B5%1
M[Q'(,#Z3R7..7E&*0<80V)RGGM+FAZ&O:E*:08&E!.@?E_KD67_*<2$-@0R
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
M$U_\6,8-Q^1,, Z4O<,4Y)7-^O%SM"KH^<..HWNTKK+);6$(:"M',:CG*J+
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
M    " !ZK))9$"TI;VT)  "R.P  %0              @ %Q< , 968R,# S
M-38P.%]E>#,Q+3$N:'1M4$L! A0#%     @ >JR261NLH85_"0  1#P  !4
M             ( !$7H# &5F,C P,S4V,#A?97@S,2TR+FAT;5!+ 0(4 Q0
M   ( 'JLDEEO:\(!D@4  #D6   5              "  <.# P!E9C(P,#,U
M-C X7V5X,S(M,2YH=&U02P$"% ,4    " !ZK))9ZWW#6JL%  #\%0  %0
M            @ &(B0, 968R,# S-38P.%]E>#,R+3(N:'1M4$L! A0#%
M  @ >JR268CDU\UO0P$ 0NH!  X              ( !9H\# &EM86=E,# P
M,#(N:G!G4$L! A0#%     @ >JR26?IL<\ K6   RX    X
M ( ! =,$ &EM86=E,# P,#,N:G!G4$L! A0#%     @ >JR267, /F(4&
M#2,! !$              ( !6"L% '!L86(M,C R-#$P,S$N>'-D4$L! A0#
M%     @ >JR26=1I>1?H'0  U\8! !4              ( !FT,% '!L86(M
M,C R-#$P,S%?8V%L+GAM;%!+ 0(4 Q0    ( 'JLDEEGGXR#Z4@  '@%!0 5
M              "  ;9A!0!P;&%B+3(P,C0Q,#,Q7V1E9BYX;6Q02P$"% ,4
M    " !ZK))9UEZ*%.X* 0#[ZP\ %0              @ '2J@4 <&QA8BTR
M,#(T,3 S,5]L86(N>&UL4$L! A0#%     @ >JR26=%DL_9=B@  O,D) !4
M             ( !\[4& '!L86(M,C R-#$P,S%?<')E+GAM;%!+!08
..#@ . ),#  "#0 <    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>120
<FILENAME>ef20035608_10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2024"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2024"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:plab="http://photronics.com/20241031"
  xmlns:srt="http://fasb.org/srt/2024"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  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="plab-20241031.xsd" xlink:type="simple"/>
    <context id="c20231101to20241031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20240428">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2024-04-28</instant>
        </period>
    </context>
    <context id="c20241212">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2024-12-12</instant>
        </period>
    </context>
    <context id="c20241031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20211101to20221031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="c20211031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="c20211031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="c20211031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="c20211031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20221031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20231031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20241031_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20240729to20241031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <startDate>2024-07-29</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_CN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_KR">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_TW">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_EuropeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_PropertyPlantAndEquipmentByTypeAxis_LandMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231101to20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20180101to20180131_ConsolidatedEntitiesAxis_VariableInterestEntityNotPrimaryBeneficiaryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityNotPrimaryBeneficiaryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-01-31</endDate>
        </period>
    </context>
    <context id="c20231031_ConsolidatedEntitiesAxis_PDMCXMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PDMCXMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PhotronicsAndDNPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">us-gaap:VariableInterestEntityPrimaryBeneficiaryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_ConsolidatedEntitiesAxis_PDMCXMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">plab:PDMCXMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_FinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_DebtInstrumentAxis_FinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:FinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_Three55MillionFinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20201231_DebtInstrumentAxis_Three55MillionFinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-02-28</instant>
        </period>
    </context>
    <context id="c20210201to20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember_LeaseContractualTermAxis_MonthlyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Seven2MillionFinanceLeaseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:MonthlyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2021-02-28</endDate>
        </period>
    </context>
    <context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FirstThreeMonthsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FirstThreeMonthsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowingNineMonthsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FollowingNineMonthsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowedByThirtySixMonthsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">plab:FollowedByThirtySixMonthsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-01-31</endDate>
        </period>
    </context>
    <context id="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:Three55MillionFinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-01-31</instant>
        </period>
    </context>
    <context id="c20181130_DebtInstrumentAxis_ProjectLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-11-30</instant>
        </period>
    </context>
    <context id="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-02-28</endDate>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_ProjectLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:ProjectLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-11-30</instant>
        </period>
    </context>
    <context id="c20231101to20241031_DebtInstrumentAxis_WorkingCapitalLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:WorkingCapitalLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-09-30</instant>
        </period>
    </context>
    <context id="c20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">plab:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_KR">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_IntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementGeographicalAxis_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_EuropeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ProductOrServiceAxis_IntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_KR">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</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="c20211101to20221031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_FlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ProductOrServiceAxis_FlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_TW">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_CN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:FlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:IntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_TW">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_StatementGeographicalAxis_EuropeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:HighEndFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamFlatPanelDisplaysMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">plab:MainstreamIntegratedCircuitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementGeographicalAxis_CN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_BalanceSheetLocationAxis_OtherCurrentAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_BalanceSheetLocationAxis_OtherCurrentAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_BalanceSheetLocationAxis_AccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_BalanceSheetLocationAxis_AccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_BalanceSheetLocationAxis_OtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_BalanceSheetLocationAxis_OtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20230315">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2023-03-15</instant>
        </period>
    </context>
    <context id="c20230316">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <instant>2023-03-16</instant>
        </period>
    </context>
    <context id="c20241031_AwardTypeAxis_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20230316to20230316">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
        </entity>
        <period>
            <startDate>2023-03-16</startDate>
            <endDate>2023-03-16</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_AwardTypeAxis_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_IncomeStatementLocationAxis_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeStatementLocationAxis_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis_ExecutiveOfficerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_IncomeStatementLocationAxis_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_AwardTypeAxis_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221031_AwardTypeAxis_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20221031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20231031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_IncomeTaxAuthorityAxis_ForeignCountryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_IncomeTaxAuthorityAxis_DomesticCountryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeTaxAuthorityAxis_DomesticCountryMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20241031_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_TaxCreditCarryforwardAxis_InvestmentCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_TaxCreditCarryforwardAxis_ResearchMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_ResearchMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_ResearchMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:InvestmentCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociIncludingPortionAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociAttributableToNoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">plab:AccumulatedOtherComprehensiveIncomeOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_StatementGeographicalAxis_CN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementGeographicalAxis_KR">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementGeographicalAxis_TW">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementGeographicalAxis_TW">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementGeographicalAxis_EuropeAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:EuropeAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementGeographicalAxis_CN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementGeographicalAxis_KR">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_StatementGeographicalAxis_EuropeAndOtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">plab:EuropeAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20221101to20231031_MajorCustomersAxis_MajorCustomer1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_MajorCustomersAxis_MajorCustomer1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_MajorCustomersAxis_MajorCustomer1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20231031_MajorCustomersAxis_MajorCustomer1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_MajorCustomersAxis_MajorCustomer1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">plab:MajorCustomer1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasuryAndGovernmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:BankTimeDepositsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-31</instant>
        </period>
    </context>
    <context id="c20200930_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="c20240828_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-08-28</instant>
        </period>
    </context>
    <context id="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:September2020AnnouncedProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-31</instant>
        </period>
    </context>
    <context id="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-11-01</startDate>
            <endDate>2024-10-31</endDate>
        </period>
    </context>
    <context id="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-09-01</startDate>
            <endDate>2023-10-31</endDate>
        </period>
    </context>
    <context id="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000810136</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">plab:ShareRepurchaseProgramsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <unit id="U001">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U002">
        <measure>shares</measure>
    </unit>
    <unit id="U003">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U004">
        <measure>plab:Facility</measure>
    </unit>
    <unit id="U005">
        <measure>pure</measure>
    </unit>
    <unit id="U006">
        <measure>iso4217:CNY</measure>
    </unit>
    <unit id="U007">
        <measure>plab:Executive</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="c20231101to20241031"
      id="Fact_b49aebacda35420abc8699f4dad50f62">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="c20231101to20241031"
      id="Fact_71059f6479804da79dec05322eea7748">--10-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="c20231101to20241031"
      id="Fact_d1bf612aa0c84301a93c5981f16f3d9a">2024</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="c20231101to20241031"
      id="Fact_cfb52adfb60149e19dbe1f8dbb0eaa83">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="c20231101to20241031"
      id="Fact_0718902107a84606a76ce7065607afc0">0000810136</dei:EntityCentralIndexKey>
    <plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember"
      id="Fact_5703f7f4215845d39c53f0c87db95a93">P7D</plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod>
    <plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MaximumMember"
      id="Fact_fd0da33cff84449793d061ed13c41db6">P21D</plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod>
    <plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember_RangeAxis_MinimumMember"
      id="Fact_0b61858f2adb4362aa480cffdbcf8a66">P14D</plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod>
    <plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember"
      id="Fact_6a757c41eb204cc49bd749b3122d8f51">P14D</plab:CustomerOrdersExpectedTimingOfSatisfactionPeriod>
    <plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MinimumMember"
      id="Fact_9a2dc09c502043edb6ecdcfd73ea6e78">P2M</plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod>
    <plab:PeriodOfWarranty
      contextRef="c20231101to20241031_RangeAxis_MinimumMember"
      id="Fact_8a2b9076b8e94965b895c6c0a1257b9a">P1M</plab:PeriodOfWarranty>
    <plab:NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"
      id="Fact_549b7473dfe1448fa5a93e38f911cb8c">P6M</plab:NumberOfConsecutiveMonthsOwnershipInterestMayFallBelowTwentyPercentForPutOrPurchaseOptionsToBeExercised>
    <plab:NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"
      id="Fact_19a45af3a76e4d89938605be47b11523">P3D</plab:NumberOfBusinessDaysForObtainingRequiredApprovalsAndClearanceForExitingParty>
    <plab:ProductInvoiceTerm
      contextRef="c20231101to20241031_RangeAxis_MinimumMember"
      id="Fact_599542974f764e109fc11a4ac9750c4f">P30D</plab:ProductInvoiceTerm>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_e8e8c545bc864b06b0577fcd644ac09b">http://fasb.org/us-gaap/2024#OtherAssetsNoncurrent</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_b4cb7129b71940b6b50393ee53e87598">http://fasb.org/us-gaap/2024#OtherAssetsNoncurrent</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_765cd50c756e45d59be9c0bd312deb00">http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet</us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_8706baf0b4a0466d9ef2b89f59b7270e">http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet</us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_4662dc911fd242c59f78644e7c671198">http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_bac605cca03d4db9b005c1c5e38ebb4e">http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_a0cf7b23a5be4102aba701801191947a">http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_f2e4447e1ddf477e8d84073b9710c2d9">http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_02bcc5c17bc34ac88d993f4748f0176e">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligationsCurrent</us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_bcdd19554cb14a1b8addbc63acc37d1c">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligationsCurrent</us-gaap:FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20231031"
      id="Fact_fc386990839946f5980f8174f7d08fe1">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligations</us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="c20241031"
      id="Fact_b0c8a6aa29b74344a7a394c915c7fd4d">http://fasb.org/us-gaap/2024#LongTermDebtAndCapitalLeaseObligations</us-gaap:FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember"
      id="Fact_bbe2f99fe0104d4199695adc89834fdf">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MinimumMember"
      id="Fact_35a7636fabec45859dd6fb4811787cac">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <dei:AuditorFirmId
      contextRef="c20231101to20241031"
      id="Fact_b11f4b2dbd9f4661a347df8580ddbb6b">34</dei:AuditorFirmId>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20241031"
      id="Fact_f520198fe14d406c9ff80d8f033d2a8d"
      unitRef="U001"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20231031"
      id="Fact_19b61436ec7944569f11fd83664f4796"
      unitRef="U001"
      xsi:nil="true"/>
    <us-gaap:OperatingLossCarryforwardsExpirationDate
      contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_DomesticCountryMember_RangeAxis_MinimumMember"
      id="Fact_2e15202e5cff414388ac6f6c863b56a3">2030-10-31</us-gaap:OperatingLossCarryforwardsExpirationDate>
    <us-gaap:OperatingLossCarryforwardsExpirationDate
      contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember_RangeAxis_MinimumMember"
      id="Fact_34100c5eedc249c59a0ecd6f981b8cf9">2025-10-31</us-gaap:OperatingLossCarryforwardsExpirationDate>
    <us-gaap:OperatingLossCarryforwardsExpirationDate
      contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MinimumMember"
      id="Fact_347c339d30ed4499a61835a1dcf4e686">2025-10-31</us-gaap:OperatingLossCarryforwardsExpirationDate>
    <us-gaap:OperatingLossCarryforwardsExpirationDate
      contextRef="c20231101to20241031_IncomeTaxAuthorityAxis_ForeignCountryMember_RangeAxis_MaximumMember"
      id="Fact_89a71140677543b98550247b393e4c6b">2034-10-31</us-gaap:OperatingLossCarryforwardsExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_ResearchMember"
      id="Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9">2025-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_ResearchMember"
      id="Fact_ada4c71dc88e4a1481325de16531bfdc">2044-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember"
      id="Fact_ce8445dff0d5453f9609997657734e2d">2043-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_InvestmentCreditMember"
      id="Fact_512726a9d52c48fe84be8a862e033b07">2044-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MinimumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"
      id="Fact_8a8dcb3a0ef94c4ab0cae95b84da7412">2025-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <us-gaap:TaxCreditCarryforwardExpirationDate
      contextRef="c20231101to20241031_RangeAxis_MaximumMember_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"
      id="Fact_908a2b39d03e4d05baa4ed0f4cf2c141">2038-10-31</us-gaap:TaxCreditCarryforwardExpirationDate>
    <dei:DocumentType
      contextRef="c20231101to20241031"
      id="Fact_2142fa2e8a2a47979cd1d35b19b691b2">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="c20231101to20241031"
      id="Fact_666fb421247c44a2a01cf6517ef998bf">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="c20231101to20241031"
      id="Fact_138402529ef14128a30ecad66bf881f0">2024-10-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="c20231101to20241031"
      id="Fact_eb045cdcea144d4aa72d5d7e04891b64">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="c20231101to20241031"
      id="Fact_9a8be88c5ac64417b9eba8848cf58b0b">001-39063</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="c20231101to20241031"
      id="Fact_c61fd47dcd17428c860f8bc42323c0fe">PHOTRONICS INC</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20231101to20241031"
      id="Fact_9523400073d049f88bcec0f9eacbc86d">CT</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20231101to20241031"
      id="Fact_d262633f05a64b2e9f7d13f8729bdcbb">06-0854886</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20231101to20241031"
      id="Fact_76f96765eb954f0db4a7091a8c24cd55">15 Secor Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20231101to20241031"
      id="Fact_2133c4b92b094439a23648b4941722b5">Brookfield</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20231101to20241031"
      id="Fact_75cb8226181c46dfa3571b2cf20d311b">CT</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20231101to20241031"
      id="Fact_2ea77abf7fed48c0996ddb808e10ec02">06804</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20231101to20241031"
      id="Fact_a1a12e25b42a4ec1a354872fc4eb51bc">203</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20231101to20241031"
      id="Fact_ccec46d7b76f458cb8dbf3ee7bf7608d">775-9000</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="c20231101to20241031"
      id="Fact_cc3bb504ab5349a58d90b9f933e516f0">COMMON</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20231101to20241031"
      id="Fact_8a08cde01ce84517b5a6593409f2021a">PLAB</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20231101to20241031"
      id="Fact_1a4ab391f3654cd6bbe2e1cd63a3dc85">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="c20231101to20241031"
      id="Fact_c307c24cb2724acda77992b07a95c8a4">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="c20231101to20241031"
      id="Fact_670dac41579c4e14879acf8bbf5ff24a">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="c20231101to20241031"
      id="Fact_e167ab88a93f4a3dad5dc463335b0873">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="c20231101to20241031"
      id="Fact_f2c8730e326f45beb7725e8458e50209">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="c20231101to20241031"
      id="Fact_10da3f30b47f4eaa911a3963428a0a7c">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="c20231101to20241031"
      id="Fact_1f2b09c740404fe7bec9ef14b6d9d5a1">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20231101to20241031"
      id="Fact_762a19f50bfb43cf999773519c866e48">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="c20231101to20241031"
      id="Fact_bbc27b4292a4467ebc6d54915561242c">true</dei:IcfrAuditorAttestationFlag>
    <dei:DocumentFinStmtErrorCorrectionFlag
      contextRef="c20231101to20241031"
      id="Fact_fc3c28e5c2094c51aa56ff5b670b9362">false</dei:DocumentFinStmtErrorCorrectionFlag>
    <dei:EntityShellCompany
      contextRef="c20231101to20241031"
      id="Fact_7a998055fe004935b97b5a65079212b9">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="c20240428"
      decimals="0"
      id="Fact_bf850bef924348d2806b3f39c8ea4d82"
      unitRef="U001">1729553783</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c20241212"
      decimals="INF"
      id="Fact_678b1444e0f6440c9ae183ddaba823da"
      unitRef="U002">63335388</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorName
      contextRef="c20231101to20241031"
      id="Fact_81bd0d717499411da24cdca4325eed7a">Deloitte &amp; Touche LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="c20231101to20241031"
      id="Fact_ef3cc282da2f43b4bc1f92eeb5dcfc79">Boston, Massachusetts</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_caf938a356534391ac6f06e777ff47a5"
      unitRef="U001">598485000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20231031"
      decimals="-3"
      id="Fact_43bc50e58b034e97ae61748bced869e9"
      unitRef="U001">499292000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments
      contextRef="c20241031"
      decimals="-3"
      id="Fact_6587d520b70e4704b8a06f06ebf606bd"
      unitRef="U001">42184000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="c20231031"
      decimals="-3"
      id="Fact_3440441187a5465ba8a9d1d072a91f01"
      unitRef="U001">12915000</us-gaap:ShortTermInvestments>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_12e677f08bfd4e6cba91585478e978be"
      unitRef="U001">1126000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_cb7e07f438364f6589db84a94b5e312f"
      unitRef="U001">1099000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_0caa5b46336242dd9e89bb8abc19d378"
      unitRef="U001">200830000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_440de40de98443c9bbac9a425436be2a"
      unitRef="U001">194927000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_7741c7a3f632457186771636a7eb2d31"
      unitRef="U001">56527000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_9257f44b183e430fb5c409a473405e10"
      unitRef="U001">49963000</us-gaap:InventoryNet>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_0079529a8f724c51b712347dbc013216"
      unitRef="U001">33036000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_54d0668b8c66439fb8e22f792d6eb411"
      unitRef="U001">28353000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_df2c96fb87234ef9afe5866089b9edca"
      unitRef="U001">931062000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f5194037611e46de9d5dc11e2d09b6a3"
      unitRef="U001">785450000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ba023ade71844c3da1c1d28fb7654aaf"
      unitRef="U001">745257000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ea01a36573c940c09c22fbc713ca2a42"
      unitRef="U001">709244000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_50352bb623c240618f5040f80c359a82"
      unitRef="U001">23059000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_4fa0f954367240438c989277111696d8"
      unitRef="U001">21297000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_3789095c6b1041069dfd726dda77c3a4"
      unitRef="U001">12681000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ac0014d0f7ee4e258f4cbf67d6feefc3"
      unitRef="U001">10230000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e601860d64ca4d769063e84b2415eb31"
      unitRef="U001">1712059000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20231031"
      decimals="-3"
      id="Fact_57f3fb2094a840ff9493a7dac6d0cdb0"
      unitRef="U001">1526221000</us-gaap:Assets>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_48b73a9a0df34b4a9e3ea2a290bd9863"
      unitRef="U001">17972000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8119593fad6c4d00a1e6e7657ad25078"
      unitRef="U001">6621000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a889de5ffd334a7cac25fafc212b493e"
      unitRef="U001">78717000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_b81e1b0a0fe74ac3b5e0b6c246d0c63c"
      unitRef="U001">84024000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_d701850e99ab4435a7c103218552716c"
      unitRef="U001">87122000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_bec5e8ca1ceb40bb8a46d7f6b5139bca"
      unitRef="U001">94578000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_1709be7ac11147a883fc0731a85cbaa6"
      unitRef="U001">183811000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_0ca24ae92ee04e6fb022132aa1610fcc"
      unitRef="U001">185223000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="c20241031"
      decimals="-3"
      id="Fact_d2790122ab8f476a8e41f931ae9db863"
      unitRef="U001">25000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="c20231031"
      decimals="-3"
      id="Fact_4d5066f7556a4171a19ea06b58e7f91d"
      unitRef="U001">17998000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b0b26f06876e46da8d309dc3ecb838b5"
      unitRef="U001">47464000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_edbcf436972242f89328af32f244058e"
      unitRef="U001">47391000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="c20241031"
      decimals="-3"
      id="Fact_1d9120a6f6e2476b992dcd2d6fc67704"
      unitRef="U001">231300000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20231031"
      decimals="-3"
      id="Fact_744eddcc59b741b3bff07173231d8348"
      unitRef="U001">250612000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20241031"
      decimals="2"
      id="Fact_dac6ab0d75f942fcaf6e29a831a665b1"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20231031"
      decimals="2"
      id="Fact_a00eeb62feed454aa75d40c37b1e97a0"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f3668d8dccba4b2d9a0d1d0316cfb0a1"
      unitRef="U002">2000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20231031"
      decimals="-3"
      id="Fact_d344d3021f7140cb9c64fafddb5b9f76"
      unitRef="U002">2000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b8c9e19c83e9491997238dfe6a339997"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20231031"
      decimals="-3"
      id="Fact_b4ef9dcbce2e40139ce8fcc15df8175a"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20231031"
      decimals="-3"
      id="Fact_9e8a8d6162bc42a384b69fc744881f64"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20241031"
      decimals="-3"
      id="Fact_01b2d6729ea148a58242c5b966b8130f"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_97e5322e4c2b415fa71215b0cf037ad3"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="c20231031"
      decimals="-3"
      id="Fact_5ee372d4e27a4ccbb5f405749ff04937"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20231031"
      decimals="2"
      id="Fact_9e3d582908374614a9617d7f11648077"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20241031"
      decimals="2"
      id="Fact_6385df83d20046e38f305eabf06327df"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20241031"
      decimals="-3"
      id="Fact_d8adf285057246e58d731e70aedbcda6"
      unitRef="U002">150000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20231031"
      decimals="-3"
      id="Fact_2af10617d0bc43c7b028cd27ad5ba704"
      unitRef="U002">150000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ab0e8012b0c14d7cb8b2c2252ddc05e4"
      unitRef="U002">61949000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a8bf8945f87e4a379675084128c4ef0d"
      unitRef="U002">61949000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20231031"
      decimals="-3"
      id="Fact_5cd0db2e978344b0bc12b6024cecd142"
      unitRef="U002">61310000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20231031"
      decimals="-3"
      id="Fact_202fc9e77344491bb03124d81fe31909"
      unitRef="U002">61310000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_3d989d5a1a2e4d968eef4e1c494f2225"
      unitRef="U001">619000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="c20231031"
      decimals="-3"
      id="Fact_d034d264f332451b8894c40802cc33fc"
      unitRef="U001">613000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ee96e38f762c42999364cb2c882a42bd"
      unitRef="U001">514757000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8de9f84167bb4559a6f9bcb5071bc0df"
      unitRef="U001">502010000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20241031"
      decimals="-3"
      id="Fact_596f695c2ecb4661bcb1969c9d7dd503"
      unitRef="U001">691807000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f9f30dc34d2247bb813386d932eb61b8"
      unitRef="U001">561119000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20241031"
      decimals="-3"
      id="Fact_0fad279701e7498889c4a3a08de0fec4"
      unitRef="U001">-86319000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8b6a473b31a14685bda500fe23f7b072"
      unitRef="U001">-88734000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2b63059a1dbc4db58baf005fe50a3a56"
      unitRef="U001">1120864000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f9398f7095fb4b17ab6ac7572cdf7c8d"
      unitRef="U001">975008000</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest
      contextRef="c20241031"
      decimals="-3"
      id="Fact_446981a36afb406caa853155b0105cb3"
      unitRef="U001">359895000</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest
      contextRef="c20231031"
      decimals="-3"
      id="Fact_1a109a3860e94ef4b2701232537b45b3"
      unitRef="U001">300601000</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031"
      decimals="-3"
      id="Fact_3c6e2aaffb404b30a5464fd951a9df74"
      unitRef="U001">1480759000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031"
      decimals="-3"
      id="Fact_11ea6a0f36c04419b86adecc3f6fa071"
      unitRef="U001">1275609000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20241031"
      decimals="-3"
      id="Fact_dd11f4ab8d1840babb6c49039a8f50db"
      unitRef="U001">1712059000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20231031"
      decimals="-3"
      id="Fact_a23a904495c04ac1ab8a899b45d99442"
      unitRef="U001">1526221000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_cb12e31f4bdf4e369026172ace85201c"
      unitRef="U001">866946000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_af34e5997f56432da996e7def1f32b51"
      unitRef="U001">892076000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_4e0a350c3bb84c1bbcb2afb53b5ff408"
      unitRef="U001">824549000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_5db2d75b98c04603951fa0084a666dad"
      unitRef="U001">551000000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1768589efd474c828b75f98052f1a86f"
      unitRef="U001">555914000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_ee2bd966d0f14ec9904c2df6ac6009ff"
      unitRef="U001">530336000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_9209f401ea7040218a71a56ce044a4a3"
      unitRef="U001">315946000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_d09f7317e590463d843d0260e732c3c9"
      unitRef="U001">336162000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_d5f810f13f454f478657bdd81a161851"
      unitRef="U001">294213000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_680758328cab499e9c50c33ccae4d4ac"
      unitRef="U001">77760000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_0017a4920b3849f482ef91e75dba1a86"
      unitRef="U001">69458000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2d53bab7ec30440db76e0a88a72fdaea"
      unitRef="U001">63989000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a715f19a65294580bae15643dc250009"
      unitRef="U001">16576000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e676bd2f5de24c169de9c02edab40a1e"
      unitRef="U001">13654000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_63786f8d6e1c4b029fc659c585c54ebf"
      unitRef="U001">18341000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:OperatingExpenses
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_09d1a53314e44043ac58cf564633420a"
      unitRef="U001">94336000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_9f8dbb76b51b414dbe52cff57cc298e0"
      unitRef="U001">83112000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_28a5f2bf02544d88af913071594179fd"
      unitRef="U001">82330000</us-gaap:OperatingExpenses>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3f76f4ec5cf94f74a44a630899a829cb"
      unitRef="U001">-92000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_71eaa580dfdb47e5964bbf69e2281c1b"
      unitRef="U001">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_9bdcd7c8720f4955b9bff9598d998679"
      unitRef="U001">-17000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_6e651d3530af4a8da45ecd41e5b88904"
      unitRef="U001">221518000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1bba49257eb149eab9e8f31958a866f4"
      unitRef="U001">253050000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2faeb31b0a1b4c098e76b3e4d10a191d"
      unitRef="U001">211866000</us-gaap:OperatingIncomeLoss>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_ab62b0c71e894372b0f56cfed78a048e"
      unitRef="U001">2168000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_dd85439c981b47e5ba85351e51c0b540"
      unitRef="U001">2466000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_09bb85f89ac142feb7e48de228705ed8"
      unitRef="U001">27344000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_f3861c22ebee49eeb23033ce786e7a57"
      unitRef="U001">24063000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_67b31cbd702f4b36b3dc2fba62724eea"
      unitRef="U001">14863000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_1a288beb7f0f4658bb8e24d2af2fcbf5"
      unitRef="U001">1680000</us-gaap:OtherNonoperatingIncomeExpense>
    <plab:InterestExpenseNetOfSubsidies
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_cbb87a69f4714092b725fdf3f4cf8d86"
      unitRef="U001">334000</plab:InterestExpenseNetOfSubsidies>
    <plab:InterestExpenseNetOfSubsidies
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_90c53c8167ad45bab39149dc3734d986"
      unitRef="U001">433000</plab:InterestExpenseNetOfSubsidies>
    <plab:InterestExpenseNetOfSubsidies
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_f6eeb6ca8f2c45bcaa584dadbbdf5e52"
      unitRef="U001">1857000</plab:InterestExpenseNetOfSubsidies>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_d9cc906690c4454ab843222dc8bfcd62"
      unitRef="U001">247415000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_8c9b25d63d0749f08f47f172cceb5d53"
      unitRef="U001">269946000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6e862819f76040ffa67ac86935e46ab9"
      unitRef="U001">239033000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_6e3a6f7341934ab79ed49dbf460f3247"
      unitRef="U001">63567000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_82195cce013d47519751c51bbf030044"
      unitRef="U001">70312000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_afc56a86ddaf420596964ce1aefd1917"
      unitRef="U001">59791000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_681f46146c784b43b52f73cbdb42fb50"
      unitRef="U001">183848000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_eed46943b65c4f37aca380abc3fb2061"
      unitRef="U001">199634000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_98ae5686f5a645dc8039f586e7bce11f"
      unitRef="U001">179242000</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_2f6ba001bfda4018b71f297999808edb"
      unitRef="U001">53160000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_289685ece6b9488db88736a505348a4c"
      unitRef="U001">74149000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_0c15d0bcc79f4e09bfdc6bcce857e0a0"
      unitRef="U001">60456000</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_c210e0364f7a4413889706ec2806c780"
      unitRef="U001">130688000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1a57033f5db34ef7af330f0dcfa8717b"
      unitRef="U001">125485000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_ffafeaad4e014c5ba774d3a55af5c3b8"
      unitRef="U001">118786000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_86f529a711c44bcaaa51dd1ae3acec4b"
      unitRef="U003">2.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20221101to20231031"
      decimals="2"
      id="Fact_1b85a79c20bb4a1e9a72b764fb8014c7"
      unitRef="U003">2.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20211101to20221031"
      decimals="2"
      id="Fact_6b5bd19f1d1f49518fcc6b31daac31af"
      unitRef="U003">1.96</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_46832a39f77f47429106acdfbb2fd78e"
      unitRef="U003">2.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20221101to20231031"
      decimals="2"
      id="Fact_de596cffc2664f2aab20d8ef781db932"
      unitRef="U003">2.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20211101to20221031"
      decimals="2"
      id="Fact_09c1d46764e643ffaf2fac4088ed6c37"
      unitRef="U003">1.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_24c47fe883c0483bbec5e60bd91b9783"
      unitRef="U002">61726000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_0206fbfcde114877beba93b725423a46"
      unitRef="U002">61139000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_93b2befc47ff4de49844b1e8e5461a5a"
      unitRef="U002">60559000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_7e04b15c21a94c13bf611fd45d8d8675"
      unitRef="U002">62391000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_ca8d77bccef947fd8b85b7ab757b896b"
      unitRef="U002">61755000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e1a62b35819049e087db59317784e096"
      unitRef="U002">61189000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_581b2ac135aa489aa61d6f390d33ed4c"
      unitRef="U001">183848000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e39d4a76e1074e4ab7f18c6f70fd6c7d"
      unitRef="U001">199634000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_9ae9af96bbc940c78ae57d5656a37677"
      unitRef="U001">179242000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a85693c5092949d0bd6b7f22d6b09f63"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_1c53071c2f074f1fa57d08c71b11fc9b"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_00a5e36ed2ab404bbd80dbd93ccabf66"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1880e9a76de04e4ebfdd64605dc5c4fc"
      unitRef="U001">8630000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_3597f771622d47e4be2b112fb7682fa8"
      unitRef="U001">5615000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_8fa3a238813d424586fb12ecd07e3798"
      unitRef="U001">-151209000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_15ebf5794be04471834e7db7dfcc04cf"
      unitRef="U001">-81000</plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax>
    <plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_2a59a09f005a4b96a95dadbe2c258a96"
      unitRef="U001">-3000</plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax>
    <plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_dcf633c373a246889d8b5da422105370"
      unitRef="U001">423000</plab:OtherComprehensiveIncomeLossOtherAdjustmentsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_fcef1ce76b16479c8ea0f58265297cea"
      unitRef="U001">8549000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_d339b9cef50a4c25bded30c760c75c8d"
      unitRef="U001">5612000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_d15a8ae94c0f414dad2ff56e4226c13b"
      unitRef="U001">-150786000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3a7a727d40da44989506d09f141ba1e8"
      unitRef="U001">192397000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_d5ff1872f58047d782d901aca8707841"
      unitRef="U001">205246000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_953b93cc81d140f9895ed6d6fb0580f7"
      unitRef="U001">28456000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_f5021fd246d84769adb1dea3e0924dae"
      unitRef="U001">59293000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_28133db2f8b149fc9354278dcd5379f2"
      unitRef="U001">70039000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_a22b8b53dbfd4e858da47faf7bdf5575"
      unitRef="U001">28697000</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b578cf0a0c88488da3bdfe17742ce77f"
      unitRef="U001">133104000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_b3d28407ae0345d8a46fb9c394b396d2"
      unitRef="U001">135207000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6de19dc486554f7e8404bb31369d6d63"
      unitRef="U001">-241000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="c20211031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_68ac883d270040638968121b6f58288d"
      unitRef="U002">60024000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_b69234e0f78e4059871337699862c5eb"
      unitRef="U001">600000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_18a706f83897453fba74c864315197c0"
      unitRef="U001">484672000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_95c45c55f284404b894b2af32fef9fd6"
      unitRef="U001">317849000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_e5bb67d61c8a43948a5f1860ac88bf99"
      unitRef="U001">0</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_29aa0fcf4d5141f5bff97b6ac1d562ae"
      unitRef="U001">20571000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_9e651e180e5b4c35a814007cbd216f24"
      unitRef="U001">176870000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20211031"
      decimals="-3"
      id="Fact_0bc51912161147748e15cd45705ac4f3"
      unitRef="U001">1000562000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_a40bb9358c1d42139a485ac183b4e06c"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_39f22e8359c04c38ba90e49ae9dee96a"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f77d5f9bb4e64788b8eb19e69d90c84f"
      unitRef="U001">118786000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_7fed5a17213d46afa523f2ded35c187e"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d6fa6044fa63496a90e1bcaf0e46f757"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_4cd815eb703841d78799f00267279721"
      unitRef="U001">60456000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e7bffff58c5549b29bbf628634ebf033"
      unitRef="U001">179242000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_0c1979969d61469a8ac77aa2c5bd83af"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_90dff2bf12954d44a583e487cf3e7247"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_db926c127781476faf57cf71f2e36767"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_07b704485c294bd492ad13e023dcc62e"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_327a9ea26ec9461b9bd36f92209e68b9"
      unitRef="U001">-119027000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_d8483ff5a4044db1918ac558017365c3"
      unitRef="U001">-31759000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_b21293a9e73945d799e962760892ff99"
      unitRef="U001">-150786000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_5f3fa08bba8843a188955252176f61c0"
      unitRef="U002">954000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_1de153b853c24603aedf21431026a07a"
      unitRef="U001">10000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_2ae4c4a1c217491d8970c605518af99a"
      unitRef="U001">4280000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_719074a16c4e4c91b0d357a0d392d052"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_710ec6187666466b83db105957c38d07"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d08df930006e49c099f7bfa3e0fb54b0"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_46c6ac5ce80a46feaa9a88ad471de3e4"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_1f7b4c3b996f49698ce528576367843b"
      unitRef="U001">4290000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e0d5216f2ef540ee8a3e1a7162901318"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_c723c1e72f1b457fa574105c641f0f26"
      unitRef="U001">6308000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_8fd0c8962db849b8b9bf1ba8b471b375"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_429cb2b42d4644d593ab7c703a464b2f"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_a4feade770854d989cea8f99c066f096"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_4997197172834a49b469c9fbed86665d"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_5751f9f70e784f279ed598ceeb4d7e99"
      unitRef="U001">6308000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_2c5fc1be95764fa788290dad94c43c5a"
      unitRef="U001">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_ade381aa1c334a2e8355657cda463db6"
      unitRef="U001">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f2780438bf534fcda1654e415e833a7d"
      unitRef="U001">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_746b6c42978348bb89b6231b425cb582"
      unitRef="U001">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_18cc3485154a4816a9c4d15c07142d9d"
      unitRef="U001">0</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_0b1259bfcdb6494e8426c4c00167e325"
      unitRef="U001">24995000</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_de46921755c841f9b2b956464d76d311"
      unitRef="U001">24995000</us-gaap:NoncontrollingInterestIncreaseFromSubsidiaryEquityIssuance>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_bf2e8eda532548c5a6bcc58f2e5e7dde"
      unitRef="U002">0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_75a1fb6440ce4ce6ba590589d415bef5"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_accb9f20388d47d4aa7c5eb39162af92"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_a1277f54d45b484084b08cb1ad3991d1"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_d49cc42c053b41ab93eb91627217f690"
      unitRef="U001">2522000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_12d024dabf034eb78abad294e50956b6"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_fd2098ce871648e5a6267c1f3e0bacc4"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6a0ac09bb2f740e89a0396fbe55a667a"
      unitRef="U001">2522000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_c22e8e9e353642f5aa5b87ff376e094c"
      unitRef="U002">187000</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_9d4a871e81244751939e436e7ac16ad3"
      unitRef="U001">2000</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_f18d7f9bfb854dceb91686c1272c2d3e"
      unitRef="U001">1519000</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_02c1ed81e58343cfa240970b431ad53a"
      unitRef="U001">1001000</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_1c9a6678c4ba44a6b29325d18e574069"
      unitRef="U001">-2522000</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_de25f23c4c3e4863811b06401ca9d60a"
      unitRef="U001">0</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_17805aa301774a959e0cd5bdde6c7a2b"
      unitRef="U001">0</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:TreasuryStockRetiredCostMethodAmount
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_26776ae865da42b88831a5f3257c41bc"
      unitRef="U001">0</us-gaap:TreasuryStockRetiredCostMethodAmount>
    <us-gaap:SharesOutstanding
      contextRef="c20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_5f3ab6334cec4f27a493292c422690f5"
      unitRef="U002">60791000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e63a2cb509b542cca2a582126255ef19"
      unitRef="U001">608000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_2f03498fdea94ff388caf59af0b53a3f"
      unitRef="U001">493741000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_3c65645e8c984dc38c90e19b7814fc51"
      unitRef="U001">435634000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_5014a2175b364ec89be107f7cc1d3294"
      unitRef="U001">0</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_8d9878e3bc424c01ac82748b774ec57c"
      unitRef="U001">-98456000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_c2f9521e9b2c4ed19d6b092cfaf34f1a"
      unitRef="U001">230562000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20221031"
      decimals="-3"
      id="Fact_353bd3df050d44f6ab2a59fc4eddaf62"
      unitRef="U001">1062089000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_62c5be3a65b546fcadd5d51f3874f787"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_04807ae3c05e4199a5be3e74fe6d268e"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_c64857a4f8e249dca039ba9ea04080f4"
      unitRef="U001">125485000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_e171cf8249a74b9a991222bec95cf689"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_8bf6097bae864e2b92495dc1db2bd921"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_1666abeec7e6493a8716b58f18c16412"
      unitRef="U001">74149000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_afc8d8d803b74d628d90705e128e8a4b"
      unitRef="U001">199634000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_ff2dfaf59fbf43dba4e4ebee6cb22146"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_37846bb602ca4a1399bf5f92f89bf111"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_7b43ba7e7983489fab6a5276e2e2cf23"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_9a2c1efb87bd4683977fdd05307a8c98"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_94027d631be14420bff40d7b337ca615"
      unitRef="U001">9722000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_c9d6ddab881f4fedb172986d896ba1a3"
      unitRef="U001">-4110000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_52635cd0def14de08f98931675afaa52"
      unitRef="U001">5612000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_3e237ebb3be54eb1b6e1c77df6b6aba9"
      unitRef="U002">519000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_2911d22a709147e0ad0d6141b71818a8"
      unitRef="U001">5000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_5081f1b2f51c4057bbbbb4aa960ace69"
      unitRef="U001">268000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_cf57d794a66748be8863272ecdb238e0"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_519b126097644b529cb7cf8fab13bc16"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_6bb63454b1044f8aaf0946c623a89f36"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_a939491d2c6743d3ac05aa4018980971"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_6c00ca64c6ae4dfbb5b031f7bffc8c11"
      unitRef="U001">273000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_cb567f491b294d10b99278ece23c57bd"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_878e2857021448b2baac69a9474aaca7"
      unitRef="U001">8001000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_db05d47a90294efcbb50c3871d545ffe"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_f59510bd2a3043cd92ba74de16f44504"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_a0c3a1edded344bca9729020e0d56e8e"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_1dec1cea8a8c4896a081a6f1e12b0df1"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e475514ec22145d7a0a39abd1cfd4242"
      unitRef="U001">8001000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="c20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_64c85811aaef43f6b2ed953390284af9"
      unitRef="U002">61310000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_2627260edeb54ab497b2dfecee807fcc"
      unitRef="U001">613000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_c50c7fb92b584c78837a8706b15a34dc"
      unitRef="U001">502010000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_cdb5d108365d43acbae6604f2d81c86a"
      unitRef="U001">561119000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_c104b7c24fea4b0fb34fb7844920e8e5"
      unitRef="U001">0</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_9e4635a7b61a4cdd8f796df05b107292"
      unitRef="U001">-88734000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_cda2519c363349c08a6c0ba44209a6fd"
      unitRef="U001">300601000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20231031"
      decimals="-3"
      id="Fact_55c3cfc12fbb406dac1bcf199648c63f"
      unitRef="U001">1275609000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_daa1caac491a4ba58b9d96dc59b3c6ce"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_73f4b2d15c424d23a609e3b41d9d9fcb"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_d3cd1f25bce7494096ae28f3940aa116"
      unitRef="U001">130688000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_411da299164040fc9ec3b81b81fac25f"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_e5b8748d7cca40559f8e864398fc2106"
      unitRef="U001">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_01d261ba37e14fc890e7f4514c50bbb5"
      unitRef="U001">53160000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b969efa62ad146d5810616fd9192713d"
      unitRef="U001">183848000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_d9c9aa3dbb4f4b90b76c1496ae523aa6"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_76095ecdf7cc49afab8f267318cfb248"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_c5670a0916b849fb94ec39c02f797e74"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_3bea852777a24dccae89f5099f04a9a6"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_266b36c74737452ca1bbe61f9049cdcc"
      unitRef="U001">2415000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_b878a0ca841f4e119cd778d5fad9d1d7"
      unitRef="U001">6134000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_60ff94c8da2a42649401b402282e3d3c"
      unitRef="U001">8549000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_40da2574f78f47cab0ece3f136b2c9a8"
      unitRef="U002">639000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_864ea316ddde4ab3850fac746beaf5de"
      unitRef="U001">6000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_1e947bac1602443a92fc48a3883cfbe8"
      unitRef="U001">-1143000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_5d081d6e673040f0bb1d9abe0a30f1d3"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_4aeac1f9cd544e60831aab66219c81cc"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_26c62e748096410ea8593916455da711"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_b4d0723df9754d61b2e9bceaf7b74301"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_94f5ad2e6bec4aca9035f0b2b8020ae2"
      unitRef="U001">-1137000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_8f0015c184e44c6784d6710ff043910f"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_d642108dec844736bc90e48b5438e2e1"
      unitRef="U001">13890000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_ec3b060bd9154c8ca01c48299dfcc4ad"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_76626cbab0c5473e9d100bdbbc409562"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_6ba69fdaf622424c803a3b6eb1c97128"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_45a19705c09f4c309c4f3967c4ead64a"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_bc96f10f89bb4d6db1c8b36225dd8a89"
      unitRef="U001">13890000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="c20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_462c994cb5aa4d7c8a000e071227bf5b"
      unitRef="U002">61949000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_7514cb5b86e94288a30d1196382a3cfc"
      unitRef="U001">619000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_cb0615daf3064260badf2541c53358e1"
      unitRef="U001">514757000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_81141e04161e470687d9119c53f6f587"
      unitRef="U001">691807000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_5a9be4082ec6413e882845061feebd2a"
      unitRef="U001">0</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_618932e296be46abbe69b339b0ce7169"
      unitRef="U001">-86319000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031_StatementEquityComponentsAxis_NoncontrollingInterestMember"
      decimals="-3"
      id="Fact_dbd1581bd84c4a08a08d8068e3eaa7f0"
      unitRef="U001">359895000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20241031"
      decimals="-3"
      id="Fact_9a6dfaa3e00a4bb6bdabc9da8f8dde8b"
      unitRef="U001">1480759000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a816a6b22c7f4998948b63f89834e81c"
      unitRef="U001">183848000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_345f97f45a69426ba3de258d94c906ef"
      unitRef="U001">199634000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_fb903ee0ef4546f5868aa1d54ae8b065"
      unitRef="U001">179242000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_fc0bfeba421a431d92bf6e339a1f59f2"
      unitRef="U001">82433000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_41150b92b5b247a690ecbe95f6f8d219"
      unitRef="U001">80473000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_b76cc70b455b4a5b8bf1d0c714144d51"
      unitRef="U001">79971000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_43f4a137e9b54f898c5e2ac04d577942"
      unitRef="U001">372000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_570195aac5994f9d97a67f4fa3aff95e"
      unitRef="U001">362000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_d01e76a882a549bd8319cda56a01320a"
      unitRef="U001">359000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ShareBasedCompensation
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_764b32b038114317804943f724543c67"
      unitRef="U001">13890000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_774ae58bf35f466182a5d1fb7db4d23b"
      unitRef="U001">8001000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_3781f2978a6d455d82806e00e7a09848"
      unitRef="U001">6308000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_40550bc0388b4042aeafdd8ffa435f05"
      unitRef="U001">-1389000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_0eacd95f02e8438aa02058ca3b4be299"
      unitRef="U001">-927000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_dd457dc9bc08438cb9be30a0d3837db7"
      unitRef="U001">809000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_0baf7139cbf445abb2a5f7a157a125d6"
      unitRef="U001">2541000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_40477a1231674c6ea63d44037463dbbd"
      unitRef="U001">-4026000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6e16fc3dcada4c3791f63f7257758d93"
      unitRef="U001">51233000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_12b534b9656347c7b1aa168ce1e33445"
      unitRef="U001">6154000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_6d639b1f9fdd4be6a24aeb1472f868aa"
      unitRef="U001">-1236000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_dbfcb7a7e3f54574917e59ef023209fb"
      unitRef="U001">2039000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_23c7db95d8d94fd5b6d86f7d60a2b6d8"
      unitRef="U001">-628000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_b6ec06dfa20b41e484a8595f6ae5cef2"
      unitRef="U001">-9665000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_a42fea78e7034f5488503d57ad1c3a51"
      unitRef="U001">-1204000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3b4b680350d54a3bbfa1b040f7a5cdf5"
      unitRef="U001">-9643000</us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e9b4411a19d4479f94da22c8df76c860"
      unitRef="U001">-294000</us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e32736096d50424fa0b125593c5114f1"
      unitRef="U001">60566000</us-gaap:IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_94613dac16d84082a65b260ed677818d"
      unitRef="U001">261444000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_02185dd1ae254510890d75cf73833dfb"
      unitRef="U001">302176000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_54712eeab363463e857243f660e017f4"
      unitRef="U001">275187000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_510faa8aa42341318a485bc47feee750"
      unitRef="U001">130942000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_809f0d80d70a414d9dfd1b684d72c724"
      unitRef="U001">131295000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_7e470ea2c4a641b9999638aef2df1a8c"
      unitRef="U001">112338000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireShortTermInvestments
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_da262305f7b4414fb0149645d55bbf14"
      unitRef="U001">100558000</us-gaap:PaymentsToAcquireShortTermInvestments>
    <us-gaap:PaymentsToAcquireShortTermInvestments
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_c961124804ff40dc87d5edc840b3263a"
      unitRef="U001">20192000</us-gaap:PaymentsToAcquireShortTermInvestments>
    <us-gaap:PaymentsToAcquireShortTermInvestments
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_43fedc31ed37470d8f383e173e591089"
      unitRef="U001">38854000</us-gaap:PaymentsToAcquireShortTermInvestments>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a28c8c0266784b7e8792eac2c61fdb17"
      unitRef="U001">72836000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1594ea8602ef4b8b85c173e582ff6921"
      unitRef="U001">47537000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2026d346cd3d448887096868074378d1"
      unitRef="U001">0</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments>
    <plab:ProceedsFromGovernmentIncentives
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e3ca9bb98fac4dc7a7fd5a3271f96c54"
      unitRef="U001">2229000</plab:ProceedsFromGovernmentIncentives>
    <plab:ProceedsFromGovernmentIncentives
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_78062d6567cf419e9a88ee1f460dd65b"
      unitRef="U001">2522000</plab:ProceedsFromGovernmentIncentives>
    <plab:ProceedsFromGovernmentIncentives
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_7e957ab410c64ea6ba65d328c805f022"
      unitRef="U001">3615000</plab:ProceedsFromGovernmentIncentives>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3ffdbd57412f484ea5aabcf2f86f435d"
      unitRef="U001">89000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_a73bd4c1694f48e2a7b8024ae165e19f"
      unitRef="U001">117000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6f07da7863344db5a8d235ae1ea08fec"
      unitRef="U001">205000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e5a478e1de2a40cbae4574f2b6ae96fd"
      unitRef="U001">-59000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_641efaad8aa74fda9eb4f84075f7a137"
      unitRef="U001">0</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_1946b92db5fd4c33bf6aebff6576e8c5"
      unitRef="U001">-25000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_13427176562c451a91574c3e5886e596"
      unitRef="U001">-156465000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_c76922c4719d4090a0ca135b3c059298"
      unitRef="U001">-101545000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_929a0f399cb24c95b1510bf4e9c48182"
      unitRef="U001">-147757000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_f38236d42e5f4fa2947bc4c548a65d7e"
      unitRef="U001">6621000</us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations>
    <us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_62f126c4debc44e59479d74b8628e0a7"
      unitRef="U001">18439000</us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations>
    <us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_46fae6cb48dd431699d3f86afbd4de9f"
      unitRef="U001">65440000</us-gaap:RepaymentsOfDebtAndCapitalLeaseObligations>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_541f3f90a9de42ba96b8f6043825f16c"
      unitRef="U001">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_0164da40f9e14706aa69d87d5e56a9d9"
      unitRef="U001">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e0af6cc000324ade82595657c3b45753"
      unitRef="U001">2522000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:ProceedsFromMinorityShareholders
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_361ba8e11eb4446f9a68ff81f46a76f2"
      unitRef="U001">0</us-gaap:ProceedsFromMinorityShareholders>
    <us-gaap:ProceedsFromMinorityShareholders
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_423d1e54881b483cb03075a704a31392"
      unitRef="U001">0</us-gaap:ProceedsFromMinorityShareholders>
    <us-gaap:ProceedsFromMinorityShareholders
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_5f6f5343bac64bf49a1289706874beb4"
      unitRef="U001">24995000</us-gaap:ProceedsFromMinorityShareholders>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_44d062dbe5474cc0909d8787ae01849f"
      unitRef="U001">1916000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_86b8d8f99af94ec8b8b5e486ee318fd5"
      unitRef="U001">1248000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_fb38bbde3c7b437cb6d3b31da2d60538"
      unitRef="U001">5749000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <plab:NetSettlementsOfRestrictedStockAwards
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b9cdbee17ed54fda84dfcfaa06b643f4"
      unitRef="U001">3025000</plab:NetSettlementsOfRestrictedStockAwards>
    <plab:NetSettlementsOfRestrictedStockAwards
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_48eacc83d7ea49d4b9e9a00db371d38f"
      unitRef="U001">1302000</plab:NetSettlementsOfRestrictedStockAwards>
    <plab:NetSettlementsOfRestrictedStockAwards
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_ac4161e3126945c19e90c3a7b86f8595"
      unitRef="U001">1471000</plab:NetSettlementsOfRestrictedStockAwards>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_efad22693eea463487556c2da5f1601a"
      unitRef="U001">-7730000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_d0899eba201540d8a4d8099d8b9ba7ac"
      unitRef="U001">-18493000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_29dbf8a13911449f85150128fbb76fb6"
      unitRef="U001">-38689000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b20772394eb8428d9d6c9cf1831bd97d"
      unitRef="U001">2127000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_6fbe6d8d7dd7403b9756ffbc76e92f56"
      unitRef="U001">-2680000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_1498a44a29234b82abf82a31081d4454"
      unitRef="U001">-46012000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e88a4e98c38e457bbfff5a92e0bbeac2"
      unitRef="U001">99376000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_aad391c443ab4896b8903504389354f6"
      unitRef="U001">179458000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6cef9c29dce64e7f980212b3aae13094"
      unitRef="U001">42729000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20231031"
      decimals="-3"
      id="Fact_dffae657a195452ca99503119b802d18"
      unitRef="U001">501867000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20221031"
      decimals="-3"
      id="Fact_ef9a3085b2da47738394e3452337043b"
      unitRef="U001">322409000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20211031"
      decimals="-3"
      id="Fact_1b245e9aa1a342f39225ab14d8a72644"
      unitRef="U001">279680000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20241031"
      decimals="-3"
      id="Fact_6670afdef54b4f3c8d25dbaa23759b06"
      unitRef="U001">601243000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20231031"
      decimals="-3"
      id="Fact_1108b6a4813645d2b3d3c57a4491faa0"
      unitRef="U001">501867000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20221031"
      decimals="-3"
      id="Fact_0674c0332a0849febc2bbe4bb0a2988f"
      unitRef="U001">322409000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:RestrictedCash
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a13b596a69144e758cc86eb7d8d4ac82"
      unitRef="U001">2758000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="c20231031"
      decimals="-3"
      id="Fact_319adf64a06f4359a2da1870c69230d1"
      unitRef="U001">2575000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="c20221031"
      decimals="-3"
      id="Fact_5b580cc0653d4945b61b883e7160657f"
      unitRef="U001">2729000</us-gaap:RestrictedCash>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ae7824451f4046648f872e038b8f95a5"
      unitRef="U001">598485000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ad76e39ca6154a129e8cb38e0e3e470f"
      unitRef="U001">499292000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20221031"
      decimals="-3"
      id="Fact_285514c853be476a95eeb3c13012be65"
      unitRef="U001">319680000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e9727955b9624be3bf0d11c504bde937"
      unitRef="U001">5217000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_7137d9adff4f42db80b1b719f5d3b240"
      unitRef="U001">18607000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_200bf96851314b7cb8db32c3be7edac0"
      unitRef="U001">3266000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <plab:ExpectedRefundableFederalInvestmentTaxCredit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1c061d1a6f044db19dae06bc265519e9"
      unitRef="U001">5013000</plab:ExpectedRefundableFederalInvestmentTaxCredit>
    <plab:ExpectedRefundableFederalInvestmentTaxCredit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e35b3aa1d31442d3a93b760343c0bb37"
      unitRef="U001">0</plab:ExpectedRefundableFederalInvestmentTaxCredit>
    <plab:ExpectedRefundableFederalInvestmentTaxCredit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e70983ee1a6d4a0db6ac777f331e6e1e"
      unitRef="U001">0</plab:ExpectedRefundableFederalInvestmentTaxCredit>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="c20231101to20241031"
      id="Text_4bb224f83a094ff68cd12a4b0fc1a5c5">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 1 - SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Nature of Business and Basis of Presentation&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Description of Business&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;Photronics, Inc. (&#x201c;Photronics&#x201d;, &#x201c;the Company&#x201d;, &#x201c;we&#x201d;, &#x201c;our&#x201d;, or &#x201c;us&#x201d;) is one of the world&#x2019;s leading manufacturers of
        photomasks, which are high-precision photographic quartz or glass plates containing microscopic images of electronic circuits. Photomasks are a key element in the manufacture of ICs and FPDs, and are used as masters to transfer circuit patterns
        onto semiconductor wafers and FPD substrates during the fabrication of integrated circuits, a variety of FPDs and, to a lesser extent, other types of electrical and optical components. The Company currently has eleven manufacturing facilities, located in Taiwan (3),



        China (2), Korea (1), the
        United States (3), and Europe (2).&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;The Company operates as a single operating segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing microscopic images of electronic circuits for use
        in the fabrication of IC&#x2019;s and FPDs. In accordance with ASC 280 &#x2013; &#x201c;&lt;span style="font-style: italic;"&gt;Segment Reporting&lt;/span&gt;&#x201d;, the Company&#x2019;s chief operating decision maker has been identified as the Chief Executive Officer, who reviews operating
        results to make decisions about allocating resources and assessing performance for the entire Company. Existing guidance, which is based on a management approach to segment reporting, establishes requirements to report selected segment information
        quarterly and to report annually entity-wide disclosures about products and services, major customers, and the countries in which the entity holds material assets and reports revenue. All material operating units qualify for aggregation under
        &#x201c;Segment Reporting&#x201d; due to their similar customer base and similarities in: economic characteristics; nature of products and services; and procurement, manufacturing and distribution processes. Since the Company operates in one segment, all
        financial information required by &#x201c;Segment Reporting&#x201d; can be found in the accompanying notes to consolidated financial statements.&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-weight: bold; font-style: italic; font-size: 10pt;"&gt;Basis of Presentation&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; The consolidated financial statements are prepared in conformity with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;). The accounting policies used to prepare these financial statements are the same as
        those used to prepare the consolidated financial statements in prior years, except as described in these notes or for the adoption of new standards as outlined below.&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;"&gt;Principles of Consolidation&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;The accompanying consolidated financial statements include the accounts of Photronics, Inc., its
          wholly owned subsidiaries, in which Photronics is considered the primary beneficiary, and the majority-owned subsidiaries which it controls.&lt;/span&gt;&lt;br/&gt;
        &lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;All intercompany balances and transactions have been eliminated in consolidation.&lt;br/&gt;
        &lt;/span&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160; &#160; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;Noncontrolling interests in subsidiaries related to Photronics ownership interests of
          less than 100% are reported as Noncontrolling interests in the consolidated balance sheets. The results of noncontrolling ownership
          interests held by Photronics, net of tax, are reported as Net (income) attributable to noncontrolling interests in the consolidated statements of income.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
      &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;
     &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Estimates and Assumptions&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;The preparation of financial statements in
      conformity with U.S. GAAP requires Photronics to make estimates and assumptions that affect amounts reported in them. The Company&#x2019;s estimates are based on historical experience and on various assumptions that are believed to be reasonable, based on
      the facts and circumstances available at the time they are made. Subsequent actual results may differ from such estimates. The Company reviews these estimates periodically and reflect any effects of revisions in the period in which they are
      determined.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Translation of Foreign Currency Financial Statements&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Photronics reporting currency is the U.S. dollar. The functional currency of the majority of Photronics foreign subsidiaries is their local currency. As such, amounts included in the consolidated
        statements of income, comprehensive income, cash flows, and changes in equity are translated using average exchange rates during each period. Assets and liabilities are translated at period-end exchange rates and resulting foreign currency
        translation adjustments are recorded in the consolidated balance sheets as a component of Accumulated other comprehensive loss.&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Foreign Currency &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-weight: bold;"&gt;Transactions&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Monetary assets and liabilities denominated in
          currencies other than the functional currency are remeasured into their respective functional currencies at exchange rates in effect at the balance sheet date. The resulting exchange gain or loss is included in Photronics&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#x2019;&lt;/span&gt; consolidated statements of income as Foreign &lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;currency transactions impacts,&lt;/span&gt;&lt;span style="font-family: 'Times New Roman';"&gt; net&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Cash and Cash Equivalents&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;Cash and cash equivalents include cash and highly liquid investments with an original
        maturity of three months or less, readily convertible to known amounts of cash, and so near to their maturity that they present insignificant risk of changes in value because of changes in interest rates. Restricted cash is included with cash and
        cash equivalents when reconciling the beginning-of-period and end-of-period total amounts shown on the consolidated statements of cash flows. The carrying values of cash equivalents approximate their fair values, due to the short-term maturities of
        these instruments.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt; Restricted Cash&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;Restricted cash in the amounts of $2.8 million and $2.6 million are included in Other assets on the
        Company&#x2019;s October 31, 2024 and October 31, 2023, consolidated balance sheets, respectively. The restrictions on these amounts are primarily related to land lease agreements and customs requirements.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Investments&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: bold; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;The Company invests in various bank time deposits, money markets and U.S. Government Securities. &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;The Company&#x2019;s&#160;&lt;span style="color: rgb(0, 0, 0);"&gt;classification





















                of investments is as follows:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; &lt;br/&gt;
            &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);"&gt;


  &lt;tr&gt;

    &lt;td style="width: 5%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="text-align: center; font-family: 'Times New Roman';"&gt;-&lt;br/&gt;
                      &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td colspan="1" style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;Maturing within three months or less from the date of purchase &lt;/td&gt;

    &lt;td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Cash and cash equivalents&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="width: 5%; vertical-align: top; font-size: 10pt;"&gt;
                      &lt;div style="text-align: center; font-family: 'Times New Roman';"&gt;-&lt;br/&gt;
                      &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="width: 60%; vertical-align: top; font-size: 10pt;"&gt;
                      &lt;div&gt;Maturing, as of the date of purchase, more than three months, but &lt;/div&gt;
                      &lt;div&gt;with remaining maturities of less than one year, from the balance sheet date &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td rowspan="1" style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right;"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Short-term investments&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);"&gt;


  &lt;tr&gt;

    &lt;td colspan="1" style="width: 5%; vertical-align: top; font-size: 10pt; text-align: center; background-color: rgb(204, 238, 255);"&gt;-&lt;/td&gt;

    &lt;td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="text-align: left; font-family: 'Times New Roman';"&gt;Maturing one year or more from the balance sheet date&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Long-term marketable investments&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&#160;&#160;&#160;&#160;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;As of
            October 31, 2024 and 2023, all of the Company&#x2019;s investments from their dates of purchase had remaining maturities of more than three months, but less than one year, and have been classified as short-term investments.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;Based
            upon the Company&#x2019;s intent and ability to hold its time deposits to maturity (which maturities range up to twelve months at purchase), such securities have been classified as held-to-maturity and are carried at amortized cost, which approximates
            market value. Money markets are classified as cash and cash equivalents. The Company&#x2019;s U.S. Government Securities are classified as available-for-sale. Available-for-sale investments are reported at fair value, with unrealized gains or losses
            (net of tax) reported in Accumulated other comprehensive income (loss). In the event of a sale of these securities, the Company would determine the cost of the investment sold at the specific individual security level and would include any gain
            or loss in&#160;&lt;span style="font-style: italic;"&gt;Interest income and other income, net&lt;/span&gt;, where the Company also reports periodic interest earned and the amortization (accretion) of discounts (premiums) related to these investments.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt; &lt;br/&gt;
          &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
            table below provides information on the Company&#x2019;s available-for-sale debt securities and time deposits classified as short-term investments. &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2024&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2023&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt; Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;U.S. Government Securities&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Time deposits&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Total&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;
              &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="width: 18pt; font-size: 10pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0); text-align: left;"&gt;&lt;sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;"&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0);"&gt;Matured during 2024&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

            &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
            Company&#x2019;s investments in marketable securities consist primarily of investments in time deposits and U.S. Government Securities. Market values were determined for each individual security in the investment portfolio. When evaluating the
            investments for other-than-temporary impairment, the Company reviews factors such as length of time and extent to which fair value has been below cost basis, the financial condition of the issuer, and the Company&#x2019;s ability and intent to hold
            the investment for a period of time, which may be sufficient for anticipated recovery in market values.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-size: 10pt;"&gt;Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&#160;We generally record the Company&#x2019;s accounts receivable at their billed amounts. The
        Company recognizes unbilled receivables when the Company has satisfied its performance obligations, has an unconditional right to consideration, but has not yet issued an invoice.&#160; All outstanding past due customer invoices are reviewed for
        collectability during, and at the end of, every reporting period. To the extent that the Company believes a loss on the collection of a customer invoice is probable, the Company records the loss and credits an allowance for credit losses. In the
        event that an amount is determined to be uncollectible, the Company charges the allowance for credit losses and derecognizes the related receivable. Refer to the Company&#x2019;s revenue recognition policy, below, for additional information on the
        Company&#x2019;s accounting for accounts receivable.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Inventories&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;Inventories are stated at the lower
        of cost, determined under the first-in, first-out (&#x201c;FIFO&#x201d;) method, or net realizable value. Please refer to Note 4 for additional information on the Company&#x2019;s inventories. Inventory reserves are established when conditions indicate that the net
        realizable value is less than costs due to assigned expiration dates or other causes based on individual facts and circumstances. If net realizable value is less than cost at the balance sheet date, the carrying amount is reduced to the realizable
        value, and the difference is recognized as a loss on valuation of inventories within cost of sales.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
      &lt;span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Property, Plant and Equipment, Net&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Property, plant and equipment, except as explained below under &#x201c;Impairment of Long-Lived Assets,&#x201d; is stated at cost less
      accumulated depreciation and amortization. Repairs and maintenance, as well as renewals and replacements of a routine nature, are charged to operations as incurred, while those that improve or extend the lives of existing assets are capitalized. Upon
      sale or other disposition, the cost of the asset and its related accumulated depreciation are removed from the accounts, and any resulting gain or loss is reflected in earnings.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Depreciation and amortization, essentially all of which are included in &lt;span style="font-style: italic;"&gt;Cost of goods sold&lt;/span&gt;
      in the Company&#x2019;s consolidated statements of income, are computed using the straight-line method over the estimated useful lives of the related assets. Buildings and improvements are depreciated over&#160;10 to&#160;39 years, machinery and equipment over&#160;5 to&#160;15 years, and furniture, fixtures, and
      office equipment over&#160;3 to&#160;5
      years. Leasehold improvements are amortized over the lesser of the life of the lease or the estimated useful life of the improvement. The Company employs judgment when making assumptions about the estimated useful lives and depreciation periods the
      Company assigns to property, plant and equipment, and when events or changes in circumstances such as a significant industry downturn, plant closures, technological obsolescence, or other occurrences indicate that their carrying amounts may not be
      recoverable.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Impairment of Long-Lived Assets&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such
      assets may not be recoverable. Determinations of recoverability are based upon the Company&#x2019;s judgment and estimates of undiscounted future cash flows resulting from the use of the assets and their eventual disposition. Measurement of an impairment
      loss for long-lived assets that the Company expects to hold and use is based on the fair value of the assets, determined using a market or income approach, compared with the carrying value of the asset. The carrying values of assets determined to be
      impaired would be reduced to their estimated fair values.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;Property, plant and equipment and other long-lived assets to be sold or otherwise disposed of are
        reported at the lower of carrying amount or fair value less cost to sell.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Treasury Stock&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;The Company records treasury stock purchases under the cost method,
      recording the entire cost of the acquired stock as treasury stock. Gains and losses on subsequent reissuances would be credited or charged to additional paid-in capital, and the Company would employ the average cost method (with average cost being
      determined separately for each share repurchase program), in the event that the Company subsequently reissues shares. When the Company retires the Company&#x2019;s treasury stock, any excess of the repurchase price paid over par value is allocated between
      additional paid-in capital and retained earnings.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Revenue Recognition&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;The Company recognizes revenue when, or as, control of a good or service transfers to a customer, in
        an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those goods or services. The Company accounts for an arrangement as a revenue contract when each party has approved and is committed
        to perform under the contract, the rights of the contracting parties regarding the goods or services to be transferred and the payment terms are identifiable, the arrangement has commercial substance, and collection of consideration is probable.
        Substantially all of the Company&#x2019;s revenue comes from the sales of photomasks. The Company typically contracts with the Company&#x2019;s customers to sell sets of photomasks, which are comprised of multiple layers, the predominance of which the Company
        invoices as they ship to customers. As the photomasks are manufactured to customer specifications, they have no alternative use to the Company and, as the Company&#x2019;s contracts generally provide the Company with the right to payment for work
        completed to date, the Company recognizes revenue as the Company performs, or &#x201c;over time,&#x201d; on most of the Company&#x2019;s contracts. The Company measures the Company&#x2019;s performance to date using an input method, which is based on the Company&#x2019;s estimated
        costs to complete the various manufacturing phases of a photomask. At the end of a reporting period, there are a number of uncompleted revenue contracts on which the Company has performed; for any such contracts under which the Company is entitled
        to be compensated for the Company&#x2019;s costs incurred plus a reasonable profit, the Company recognizes revenue and a corresponding contract asset for such performance. The Company accounts for shipping and handling activities that the Company performs
        after a customer obtains control of a good as being activities to fulfill the Company&#x2019;s promise to transfer the good to the customer, rather than as promised services, or performance obligations, under the contract. The Company reports the
        Company&#x2019;s revenue net of any sales or similar taxes the Company collects on behalf of governmental entities.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;As stated above, photomasks are manufactured to customer specifications in accordance with their proprietary designs; thus, they are
      individually unique. Due to their uniqueness and other factors, their transaction prices are individually established through negotiations with customers; consequently, the Company&#x2019;s photomasks do not have standard or &#x201c;list&#x201d; prices. The transaction
      prices of the vast majority of the Company&#x2019;s revenue contracts include only fixed amounts of consideration. In certain instances, such as when the Company offers a customer an early payment discount, an estimate of variable consideration would be
      included in the transaction price, but only to the extent that a significant reversal of revenue would not occur when the uncertainty related to the variability was resolved.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;&lt;span style="font-size: 10pt;"&gt;Contract Assets and Contract Liabilities&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company recognizes a contract asset when the Company&#x2019;s performance under a contract precedes the Company&#x2019;s receipt of
      consideration from a customer, or before payment is due, and the Company&#x2019;s receipt of consideration is conditional upon factors other than the passage of time. Contract assets reflect the Company&#x2019;s transfer of control to customers of photomasks that
      are in process or completed but not yet shipped to customers. A receivable is recognized when the Company has an unconditional right to payment for the Company&#x2019;s performance, which generally occurs when the Company ships the photomasks. The Company&#x2019;s
      contract assets primarily consist of a significant amount of the Company&#x2019;s in-process production orders and fully manufactured photomasks which have not yet shipped, for which the Company has an enforceable right to collect consideration (including a
      reasonable profit) in the event the in-process orders are cancelled by customers. On an individual contract basis, the Company nets contract assets with contract liabilities (deferred revenue) for financial reporting purposes. The Company&#x2019;s net
      credit losses on the accounts receivable during 2024 were insignificant. The Company did not impair any contract assets or accounts
      receivable in 2024 or 2023.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Contract Costs&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company pays commissions to third-party sales agents for certain sales that they procure on the Company&#x2019;s behalf. However, the
      bases of the commissions are the transaction prices of the sales, which are completed in less than one year; thus, no relationship is established with a customer that will result in future business. Therefore, the Company would not recognize any
      portion of these sales commissions as costs of obtaining a contract, nor does the Company currently foresee other circumstances under which the Company would recognize such assets.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;span style="font-family: 'Times New Roman'; font-weight: bold; font-style: italic;"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;As the Company is typically required to fulfill customer orders within a short time period, the
        Company&#x2019;s backlog of orders is generally not in excess of &lt;span style="-sec-ix-hidden:Fact_5703f7f4215845d39c53f0c87db95a93"&gt;one&lt;/span&gt; to &lt;span style="-sec-ix-hidden:Fact_6a757c41eb204cc49bd749b3122d8f51"&gt;two&lt;/span&gt; weeks for IC photomasks and &lt;span style="-sec-ix-hidden:Fact_0b61858f2adb4362aa480cffdbcf8a66"&gt;two&lt;/span&gt; to &lt;span style="-sec-ix-hidden:Fact_fd0da33cff84449793d061ed13c41db6"&gt;three&lt;/span&gt; weeks for FPD photomasks. However, the demand for some IC photomasks can extend beyond the traditional time period; thus the backlog, in some
        individual cases, can extend to as long as &lt;span style="-sec-ix-hidden:Fact_9a2dc09c502043edb6ecdcfd73ea6e78"&gt;two&lt;/span&gt; to three months. More recently however, backlogs for most high demand products have returned to historical levels of less than a month. As allowed under ASC 606 &#x2013; &lt;span style="font-style: italic;"&gt;Revenue Contracts
          with Customers,&lt;/span&gt; the Company has elected not to disclose the Company&#x2019;s remaining performance obligations, which represent the costs associated with the completion of the manufacturing process of in-process photomasks related to contracts
        that have an original duration of one year or less.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Product Warranties&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company&#x2019;s photomasks are sold under warranties that generally range from &lt;span style="-sec-ix-hidden:Fact_8a2b9076b8e94965b895c6c0a1257b9a"&gt;one&lt;/span&gt; to twenty-four months. The Company warrants that the Company&#x2019;s
      photomasks conform to customer specifications, and the Company will typically repair, replace, or issue a refund for any photomasks that fail to do so. The warranties do not represent separate performance obligations in the Company&#x2019;s revenue
      contracts. Historically, customer claims under warranties have been immaterial.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;&#160;&#160;&#160; The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the
          Company commits to entering the agreement and evaluates at that time whether the lease is an operating lease or a finance lease. The Company recognizes right-of-use assets and lease liabilities for operating and finance leases with terms greater
          than 12 months. Please refer to Note 11 &#x2013; &lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt; for additional information.&lt;br/&gt;
          &lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; The Company&#x2019;s involvement in lease arrangements has typically been as a lessee. The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the Company commits to
          entering the agreement. An arrangement is determined to be a lease when it conveys to the Company the right to control the use of an identified asset for a period of time in exchange for consideration. The Company&#x2019;s having the right to control an
          identified asset is determined by whether the Company is entitled to substantially all of its economic benefits and can direct its use. The Company recognizes leases on the Company&#x2019;s consolidated balance sheet when a lessor makes an asset
          underlying a lease having a term in excess of twelve months available for the Company&#x2019;s use. As allowed under ASC Topic 842 &#x2013; &#x201c;&lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt;&#x201d; (&#x201c;Topic 842&#x201d;), the Company has elected 1) not to apply the recognition
          requirements to leases that, at their commencement dates, have lease terms of twelve months or less and do not include options to purchase their underlying assets that the Company is reasonably certain to exercise and 2) for all classes of
          assets, the practical expedient to not separate lease components of a contract from non-lease components of a contract. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;&lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; If an arrangement is determined to be, or includes a lease, the Company then applies the classification criteria in ASC 842 - &lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt; to determine whether the lease is a finance lease or an
          operating lease. For both types of leases, at their commencement dates (which are the dates on which a lessor makes an underlying asset available for the Company&#x2019;s use), the Company recognizes Right-of-Use (&#x201c;ROU&#x201d;) assets, which represent the
          Company&#x2019;s rights to use the underlying assets, and lease liabilities which represent the Company&#x2019;s obligation to make payments for such rights. The present value of lease payments over the term of the lease provides the basis for the initial
          measurement of ROU assets and their related lease liabilities. Variable lease payments, other than those that are dependent on an index or on a rate (at which they are measured on their commencement dates), are not included in the measurement of
          ROU assets and their related lease liabilities. Lease terms include extension periods if the lease agreement includes an option to extend the lease that the Company is reasonably certain to exercise. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; The initial measurement process for finance leases and operating leases is the same, except that, for operating leases, the Company generally applies the
          Company&#x2019;s incremental borrowing rates for collateralized borrowings over terms similar to those of the leases to determine the lease liability while, for finance leases, the Company uses the interest rates implicit in the leases. The initial
          measurement of ROU assets may require further adjustments for lease prepayments and initial direct costs the Company incurs. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; Operating leases are expensed on a straight-line basis over the terms of the leases, and are included in the consolidated statement of income in &lt;span style="font-style: italic;"&gt;Cost of goods sold, Selling, general and administrative&lt;/span&gt;, or &lt;span style="font-style: italic;"&gt;Research and development&lt;/span&gt; expense in accordance with the use of the underlying asset. Finance lease ROU
          assets are amortized over the estimated useful life of the underlying asset; the expenses are included in the consolidated statement of income in &lt;span style="font-style: italic;"&gt;Cost of goods sold&lt;/span&gt;. Finance lease liabilities are
          subsequently remeasured by increasing the liability to reflect interest accrued during a period and decreasing the liability to reflect payments made during the period. Interest expense incurred on finance leases is included in &lt;span style="font-style: italic;"&gt;Interest expense&lt;/span&gt; on the consolidated statements of income.&lt;br/&gt;
          &lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; Cash paid for operating leases and interest paid for finance leases are included in the consolidated statement of cash flows as operating activities in &lt;span style="font-style: italic;"&gt;Accounts payable, accrued liabilities and other&lt;/span&gt;;
          cash paid for finance lease principal is included in &lt;span style="font-style: italic;"&gt;Repayments of debt&lt;/span&gt; in the financing activities section of the consolidated statement of cash flows.&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Share-Based Compensation&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;"&gt;We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#x2019;s common stock&#x2019;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Research and Development&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Research and development costs are expensed as incurred and consist primarily of development efforts related to high-end process
      technologies for advanced subwavelength reticle solutions for IC and FPD photomask technologies. Research and development expenses were $16.6
      million, $13.7 million, and $18.3
      million for the years ended October 31, 2024, 2023 and 2022, respectively.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;
     &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Government Grants&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt;The &lt;span style="font-size: 10pt;"&gt;Company receives or expects to receive in the future, various types of
          government assistance, primarily in the form of grants or refundable tax credits.&#160; Government assistance is recognized when there is reasonable assurance that: (1) the Company will comply with the relevant conditions and (2) the assistance will
          be received. Government assistance related to reimbursing fixed asset purchases, such as reimbursement grants and refundable federal investment tax credits, are recorded as a reduction to the related asset(s), which then reduces depreciation
          expense over the expected useful life of the asset on a straight-line basis. If some, or all, of the amount of government assistance becomes repayable (e.g. due to non-fulfillment of the grant conditions) or there is no longer reasonable
          assurance the amount will be received (e.g. due to additional interpretive guidance) then the adjustment is accounted for prospectively as a change in accounting estimate. The effect of the change in estimate is recognized in the period in which
          management concludes that it is no longer reasonably assured that all of the grant conditions will be met. A corresponding financial liability is recognized for the amount of the repayment, if any&lt;/span&gt;.&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;Company accounts for funds the Company receives from government grants by either reducing the costs of the
        assets (if the grant relates to capital expenditures) or expenses which could be &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Cost of goods sold, Selling, general and administrative, or Research and development expenses&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the consolidated statements of income.&#160; If the funds the Company receives cannot be attributed to specific assets or expenses, they would be recognized as other income, and included in &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Interest income and other income, net&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the consolidated statements of income. Funds the Company receive from government grants are classified in
        the Company&#x2019;s consolidated statements of cash flows as either &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Net cash
        provided by operating activities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; or &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Net cash provided by investing activities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;, in accordance with how the Company expends the funds. When a grant is received before conditions of the grant have been met, the
        grant is recorded in &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Accrued liabilities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; or &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Other liabilities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the Consolidated Balance Sheets.&#160; For the years ended October 31, 2024, October 31, 2023, and October 31, 2022, grants recorded in the Company&#x2019;s Consolidated Financial Statements were not material.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&lt;span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0);"&gt;The &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Company expects to receive refundable
        federal investment tax credits through the CHIPS Act in connection with ongoing expansion projects. As of October 31, 2024, the Company has reduced property, plant and equipment, net by $5.0 million as a result of expected refundable tax credits in connection with the CHIPS Act&lt;span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt;. The Company has also applied for direct capital grants through the CHIPS Act in connection with proposed projects.&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;
     &lt;span style="font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Income Taxes&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The income tax provision is computed on the basis of the income or loss before income taxes for each entity in its respective tax
      jurisdiction. Deferred income taxes reflect the tax effects of differences between the carrying amounts of assets and liabilities for financial reporting purposes and their amounts used for income tax purposes, as well as the tax effects of net
      operating losses and tax credit carryforwards. We employ judgment and make assumptions when establishing valuation allowances for deferred income tax assets, if their realization is not deemed to be more likely than not, by considering future market
      growth, operating forecasts, future taxable income, and the mix of earnings among the tax jurisdictions in which we operate. Accordingly, income taxes charged against earnings may have been impacted by changes in the valuation allowances. We are
      eligible for investment tax credits in U.S. and non-U.S. tax jurisdictions. We account for investment tax credits under the &#x201c;flow-through&#x201d; method of accounting. As permitted in ASC 740 &#x201c;Income Taxes&#x201d;, under the flow-through method of accounting, the
      tax benefit from an investment tax credit is recorded as a reduction of income taxes in the period in which the credit is generated.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We consider income taxes in each of the tax jurisdictions in which we operate in order to determine our effective income tax rate.
      Our current income tax expense is thus identified, and temporary differences resulting from differing treatments of items for tax and financial reporting purposes are assessed. These differences result in deferred tax assets, which are presented on
      our consolidated balance sheets, and deferred tax liabilities, which are included in &lt;span style="font-style: italic;"&gt;Other liabilities&lt;/span&gt; on our consolidated balance sheets.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;We account for uncertain tax positions by recording a liability for unrecognized tax benefits
        resulting from uncertain tax positions taken, or expected to be taken, in our tax returns. We include any applicable interest and penalties related to uncertain tax positions in the liability and in our income tax provision.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;
     &lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Earnings Per Share&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;Basic earnings per share (&#x201c;EPS&#x201d;) attributed to Photronics shareholders for both basic and diluted is
        computed independently for each period presented and is based on the weighted-average number of common shares outstanding for the period, excluding any dilutive common share equivalents. Diluted EPS reflects the potential dilution that could occur
        if certain share-based payment awards were exercised or earned.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Variable Interest Entities&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We account for the investments the Company makes in certain legal entities in which equity investors do not have: 1) sufficient
      equity at risk for the legal entity to finance its activities without additional subordinated financial support or, 2) as a group, the holders of the equity investment at risk do not have either the power, through voting or similar rights, to direct
      the activities of the legal entity that most significantly impact the entity&#x2019;s economic performance or, 3) the obligation to absorb the expected losses of the legal entity or the right to receive expected residual returns of the legal entity as
      &#x201c;variable interest entities&#x201d;, or &#x201c;VIEs&#x201d;.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We consolidate the results of any such entity in which the Company has determined that the Company has a controlling financial
      interest. The Company would have a &#x201c;controlling financial interest&#x201d; (and thus be considered the &#x201c;primary beneficiary&#x201d; of the entity) in such an entity when the Company has both the power to direct the activities that most significantly affect the
      VIE&#x2019;s economic performance and the obligation to absorb the losses of, or right to receive the benefits from, the VIE that could be potentially significant to the VIE. On a quarterly basis, the Company reassesses whether the Company has a controlling
      financial interest in any investments the Company has in these entities.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We would account for investments the Company makes in VIEs in which the Company has determined that the Company does not have a
      controlling financial interest but have a significant influence over, and hold at least a twenty percent ownership interest in, using the
      equity method. An investment not meeting the parameters to be accounted for under the equity method would be accounted for using the cost method, unless the investment had a readily determinable fair value, at which value it would then be reported.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;&#160; &lt;span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; font-weight: bold; font-size: 10pt;"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;&#160; In December 2023, the FASB issued ASU 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to
          Income Tax Disclosures&#x201d;, to enhance the transparency and decision usefulness of income tax disclosures. The amendments in this Update related to the rate reconciliation and income taxes paid disclosures to improve the transparency of income tax
          disclosures by requiring (1) consistent categories and greater disaggregation of information in the rate reconciliation and (2) income taxes paid disaggregated by jurisdiction. The amendments allow investors to better assess, in their capital
          allocation decisions, how an entity&#x2019;s worldwide operations and related tax risks and tax planning and operational opportunities affect its income tax rate and prospects for future cash flows. The guidance in this Update will be effective for
          Photronics in its fiscal year 2026 Form 10-K, with early application of the amendments allowed. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#x2019;s disclosures.&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt; In November 2023, the FASB issued ASU 2023-07, &#x201c;Segment Reporting (Topic 280): Improvements
          to Reportable Segment Disclosures&#x201d;, which improves reportable segment disclosure requirements, primarily through enhanced disclosures about significant segment expenses. The guidance in this Update is effective for Photronics in its fiscal year
          2025 Form 10-K, with early adoption permitted. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#x2019;s disclosures.&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:SignificantAccountingPoliciesTextBlock>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031"
      decimals="INF"
      id="Fact_6209b9c989aa447984d6b49575d8ca5e"
      unitRef="U004">11</plab:NumberOfManufacturingFacilities>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031_StatementGeographicalAxis_TW"
      decimals="0"
      id="Fact_dc04e5ea72534a43a364132c6704fea3"
      unitRef="U004">3</plab:NumberOfManufacturingFacilities>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031_StatementGeographicalAxis_CN"
      decimals="0"
      id="Fact_3da749a0273345229b454c665eafc8e2"
      unitRef="U004">2</plab:NumberOfManufacturingFacilities>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031_StatementGeographicalAxis_KR"
      decimals="0"
      id="Fact_b2da0c955dea4a2ba5968895ee790d7f"
      unitRef="U004">1</plab:NumberOfManufacturingFacilities>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031_StatementGeographicalAxis_US"
      decimals="0"
      id="Fact_0320488616584aa4849f604736bf9c1f"
      unitRef="U004">3</plab:NumberOfManufacturingFacilities>
    <plab:NumberOfManufacturingFacilities
      contextRef="c20231101to20241031_StatementGeographicalAxis_EuropeMember"
      decimals="0"
      id="Fact_e3f21f39acad452e9c32f5d82288374b"
      unitRef="U004">2</plab:NumberOfManufacturingFacilities>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="c20231101to20241031"
      id="Text_2bf61a4d05d34bd9a2044d0a12f6350a">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-weight: bold; font-style: italic; font-size: 10pt;"&gt;Basis of Presentation&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; The consolidated financial statements are prepared in conformity with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;). The accounting policies used to prepare these financial statements are the same as
        those used to prepare the consolidated financial statements in prior years, except as described in these notes or for the adoption of new standards as outlined below.&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_61d99c3db7be485982ae0ee8dc274634">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;"&gt;Principles of Consolidation&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;The accompanying consolidated financial statements include the accounts of Photronics, Inc., its
          wholly owned subsidiaries, in which Photronics is considered the primary beneficiary, and the majority-owned subsidiaries which it controls.&lt;/span&gt;&lt;br/&gt;
        &lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;All intercompany balances and transactions have been eliminated in consolidation.&lt;br/&gt;
        &lt;/span&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160; &#160; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt;Noncontrolling interests in subsidiaries related to Photronics ownership interests of
          less than 100% are reported as Noncontrolling interests in the consolidated balance sheets. The results of noncontrolling ownership
          interests held by Photronics, net of tax, are reported as Net (income) attributable to noncontrolling interests in the consolidated statements of income.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</us-gaap:ConsolidationPolicyTextBlock>
    <plab:PercentageOfOwnershipInterestInSubsidiaries
      contextRef="c20241031"
      decimals="2"
      id="Fact_c4296eff2b394bf085bef40a6311ee6a"
      unitRef="U005">1</plab:PercentageOfOwnershipInterestInSubsidiaries>
    <us-gaap:UseOfEstimates
      contextRef="c20231101to20241031"
      id="Text_f770b712708449d89b014810427068e4">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;
     &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Estimates and Assumptions&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;The preparation of financial statements in
      conformity with U.S. GAAP requires Photronics to make estimates and assumptions that affect amounts reported in them. The Company&#x2019;s estimates are based on historical experience and on various assumptions that are believed to be reasonable, based on
      the facts and circumstances available at the time they are made. Subsequent actual results may differ from such estimates. The Company reviews these estimates periodically and reflect any effects of revisions in the period in which they are
      determined.&lt;/div&gt;
</us-gaap:UseOfEstimates>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_057bcd5b7b61467f87a737a243526abf">
&lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Translation of Foreign Currency Financial Statements&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Photronics reporting currency is the U.S. dollar. The functional currency of the majority of Photronics foreign subsidiaries is their local currency. As such, amounts included in the consolidated
        statements of income, comprehensive income, cash flows, and changes in equity are translated using average exchange rates during each period. Assets and liabilities are translated at period-end exchange rates and resulting foreign currency
        translation adjustments are recorded in the consolidated balance sheets as a component of Accumulated other comprehensive loss.&lt;/span&gt;&lt;/div&gt;
</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <plab:ForeignCurrencyTransactionsPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_e8e532e928d547f693904f3ac53faa42">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Foreign Currency &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-weight: bold;"&gt;Transactions&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Monetary assets and liabilities denominated in
          currencies other than the functional currency are remeasured into their respective functional currencies at exchange rates in effect at the balance sheet date. The resulting exchange gain or loss is included in Photronics&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#x2019;&lt;/span&gt; consolidated statements of income as Foreign &lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;currency transactions impacts,&lt;/span&gt;&lt;span style="font-family: 'Times New Roman';"&gt; net&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;
</plab:ForeignCurrencyTransactionsPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_eaaf3f5df03f459da6de2a78baba4f02">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Cash and Cash Equivalents&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;Cash and cash equivalents include cash and highly liquid investments with an original
        maturity of three months or less, readily convertible to known amounts of cash, and so near to their maturity that they present insignificant risk of changes in value because of changes in interest rates. Restricted cash is included with cash and
        cash equivalents when reconciling the beginning-of-period and end-of-period total amounts shown on the consolidated statements of cash flows. The carrying values of cash equivalents approximate their fair values, due to the short-term maturities of
        these instruments.&lt;/span&gt;&lt;/div&gt;
</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy
      contextRef="c20231101to20241031"
      id="Text_046b9ab3f7a245079dc31e39773a9a59">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt; Restricted Cash&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;Restricted cash in the amounts of $2.8 million and $2.6 million are included in Other assets on the
        Company&#x2019;s October 31, 2024 and October 31, 2023, consolidated balance sheets, respectively. The restrictions on these amounts are primarily related to land lease agreements and customs requirements.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;
</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:RestrictedCash
      contextRef="c20241031"
      decimals="-5"
      id="Fact_ae6fea1b5bb34d71bc96cda2c9f6701b"
      unitRef="U001">2800000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="c20231031"
      decimals="-5"
      id="Fact_891d4a5d97b94058a22aa7ba8b24e168"
      unitRef="U001">2600000</us-gaap:RestrictedCash>
    <us-gaap:InvestmentPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_2af364eac4d3448dbb8110d0fef29d43">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Investments&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: bold; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;The Company invests in various bank time deposits, money markets and U.S. Government Securities. &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;The Company&#x2019;s&#160;&lt;span style="color: rgb(0, 0, 0);"&gt;classification





















                of investments is as follows:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; &lt;br/&gt;
            &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);"&gt;


  &lt;tr&gt;

    &lt;td style="width: 5%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="text-align: center; font-family: 'Times New Roman';"&gt;-&lt;br/&gt;
                      &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td colspan="1" style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;Maturing within three months or less from the date of purchase &lt;/td&gt;

    &lt;td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Cash and cash equivalents&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="width: 5%; vertical-align: top; font-size: 10pt;"&gt;
                      &lt;div style="text-align: center; font-family: 'Times New Roman';"&gt;-&lt;br/&gt;
                      &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="width: 60%; vertical-align: top; font-size: 10pt;"&gt;
                      &lt;div&gt;Maturing, as of the date of purchase, more than three months, but &lt;/div&gt;
                      &lt;div&gt;with remaining maturities of less than one year, from the balance sheet date &lt;/div&gt;
                    &lt;/td&gt;

    &lt;td rowspan="1" style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right;"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Short-term investments&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: rgb(0, 0, 0);"&gt;


  &lt;tr&gt;

    &lt;td colspan="1" style="width: 5%; vertical-align: top; font-size: 10pt; text-align: center; background-color: rgb(204, 238, 255);"&gt;-&lt;/td&gt;

    &lt;td style="width: 60%; vertical-align: top; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="text-align: left; font-family: 'Times New Roman';"&gt;Maturing one year or more from the balance sheet date&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="width: 35%; vertical-align: bottom; font-size: 10pt; text-align: right; background-color: rgb(204, 238, 255);"&gt;
                      &lt;div style="font-family: 'Times New Roman'; font-style: normal;"&gt;Long-term marketable investments&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&#160;&#160;&#160;&#160;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;As of
            October 31, 2024 and 2023, all of the Company&#x2019;s investments from their dates of purchase had remaining maturities of more than three months, but less than one year, and have been classified as short-term investments.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;Based
            upon the Company&#x2019;s intent and ability to hold its time deposits to maturity (which maturities range up to twelve months at purchase), such securities have been classified as held-to-maturity and are carried at amortized cost, which approximates
            market value. Money markets are classified as cash and cash equivalents. The Company&#x2019;s U.S. Government Securities are classified as available-for-sale. Available-for-sale investments are reported at fair value, with unrealized gains or losses
            (net of tax) reported in Accumulated other comprehensive income (loss). In the event of a sale of these securities, the Company would determine the cost of the investment sold at the specific individual security level and would include any gain
            or loss in&#160;&lt;span style="font-style: italic;"&gt;Interest income and other income, net&lt;/span&gt;, where the Company also reports periodic interest earned and the amortization (accretion) of discounts (premiums) related to these investments.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt; &lt;br/&gt;
          &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
            table below provides information on the Company&#x2019;s available-for-sale debt securities and time deposits classified as short-term investments. &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2024&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2023&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt; Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;U.S. Government Securities&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Time deposits&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Total&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;
              &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="width: 18pt; font-size: 10pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0); text-align: left;"&gt;&lt;sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;"&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0);"&gt;Matured during 2024&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

            &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
            Company&#x2019;s investments in marketable securities consist primarily of investments in time deposits and U.S. Government Securities. Market values were determined for each individual security in the investment portfolio. When evaluating the
            investments for other-than-temporary impairment, the Company reviews factors such as length of time and extent to which fair value has been below cost basis, the financial condition of the issuer, and the Company&#x2019;s ability and intent to hold
            the investment for a period of time, which may be sufficient for anticipated recovery in market values.&lt;/div&gt;
</us-gaap:InvestmentPolicyTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_b9d7fd201f2646829fbb46e4859f0dee">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
            table below provides information on the Company&#x2019;s available-for-sale debt securities and time deposits classified as short-term investments. &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2024&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;October 31, 2023&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Amortized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Unrealized&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Carrying&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt; Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Cost&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Gains&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Losses&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold; font-size: 10pt;"&gt;Value&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;U.S. Government Securities&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 2px;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Time deposits&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 20%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;Total&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;42,184&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,913&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;4&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;(2&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-size: 10pt;"&gt;12,915&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;
              &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="width: 18pt; font-size: 10pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0); text-align: left;"&gt;&lt;sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;"&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;"&gt;
                      &lt;div style="color: rgb(0, 0, 0);"&gt;Matured during 2024&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

            &lt;/div&gt;
</us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_ba63127f9d614ec28d81775a02acc680"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_362a6ee1bf6f42a7a72518d67cadb9f7"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_a1e0b50b0c684fdd8e637f7d41980f66"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20241031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_42988dd9d64c4d60973a5a2c1243f674"
      unitRef="U001">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_a5b6b365c7df4dd8b16cffe864a3cff2"
      unitRef="U001">12913000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_2b0f7ff68d6f4359bd6720e33f04a097"
      unitRef="U001">4000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_fd69bfb6cfbd446c973089a5001d8511"
      unitRef="U001">2000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20231031_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_b43febad08ae4b4b986cc014d9b85d9d"
      unitRef="U001">12915000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_5fcca24198d54cf4babdd0317be50e73"
      unitRef="U001">42184000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_1e8f0fa528764cac861218992fa1e735"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_30114c519135426c8cdbbb1aefb0353d"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_48e1bf5222484f22ad9ae2c89c0319c1"
      unitRef="U001">42184000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_b3593d4276274ce3a077006d7b2179a5"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_8e4b4420e4de44999239fc4ba8d1063a"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_858749185ae14e0daea34860778d0cf1"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember"
      decimals="-3"
      id="Fact_68a4e284bcad424d9b4d3c6ee05d1c6f"
      unitRef="U001">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2a24dd4482db4140934aaee89f42abec"
      unitRef="U001">42184000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20241031"
      decimals="-3"
      id="Fact_5064da03a9a84fba80abd76faf780221"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20241031"
      decimals="-3"
      id="Fact_74271b0df9064b8c925000a02fdf653a"
      unitRef="U001">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20241031"
      decimals="-3"
      id="Fact_417ddedf67ee481888b6b138848bf642"
      unitRef="U001">42184000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8c67d72cbbe747049431330861d21e81"
      unitRef="U001">12913000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c20231031"
      decimals="-3"
      id="Fact_32af6766a5724b948c9bd2d465beb00c"
      unitRef="U001">4000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c20231031"
      decimals="-3"
      id="Fact_e684db4061e244a19ff8d7dc96f70831"
      unitRef="U001">2000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7274197d026b4f6b89ee79267a87e200"
      unitRef="U001">12915000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:CreditLossFinancialInstrumentPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_cc36e8e20fc3468ba4bcf1ac165dbc6b">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-size: 10pt;"&gt;Accounts Receivable, Unbilled Receivables and Allowance for Credit Losses&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;&#160;We generally record the Company&#x2019;s accounts receivable at their billed amounts. The
        Company recognizes unbilled receivables when the Company has satisfied its performance obligations, has an unconditional right to consideration, but has not yet issued an invoice.&#160; All outstanding past due customer invoices are reviewed for
        collectability during, and at the end of, every reporting period. To the extent that the Company believes a loss on the collection of a customer invoice is probable, the Company records the loss and credits an allowance for credit losses. In the
        event that an amount is determined to be uncollectible, the Company charges the allowance for credit losses and derecognizes the related receivable. Refer to the Company&#x2019;s revenue recognition policy, below, for additional information on the
        Company&#x2019;s accounting for accounts receivable.&lt;/span&gt;&lt;/div&gt;
</us-gaap:CreditLossFinancialInstrumentPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_0cc7f00793ba403aa43eb308b213be40">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Inventories&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;Inventories are stated at the lower
        of cost, determined under the first-in, first-out (&#x201c;FIFO&#x201d;) method, or net realizable value. Please refer to Note 4 for additional information on the Company&#x2019;s inventories. Inventory reserves are established when conditions indicate that the net
        realizable value is less than costs due to assigned expiration dates or other causes based on individual facts and circumstances. If net realizable value is less than cost at the balance sheet date, the carrying amount is reduced to the realizable
        value, and the difference is recognized as a loss on valuation of inventories within cost of sales.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_87740ec7d7f6422f82654dfcf173d070">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Property, Plant and Equipment, Net&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Property, plant and equipment, except as explained below under &#x201c;Impairment of Long-Lived Assets,&#x201d; is stated at cost less
      accumulated depreciation and amortization. Repairs and maintenance, as well as renewals and replacements of a routine nature, are charged to operations as incurred, while those that improve or extend the lives of existing assets are capitalized. Upon
      sale or other disposition, the cost of the asset and its related accumulated depreciation are removed from the accounts, and any resulting gain or loss is reflected in earnings.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Depreciation and amortization, essentially all of which are included in &lt;span style="font-style: italic;"&gt;Cost of goods sold&lt;/span&gt;
      in the Company&#x2019;s consolidated statements of income, are computed using the straight-line method over the estimated useful lives of the related assets. Buildings and improvements are depreciated over&#160;10 to&#160;39 years, machinery and equipment over&#160;5 to&#160;15 years, and furniture, fixtures, and
      office equipment over&#160;3 to&#160;5
      years. Leasehold improvements are amortized over the lesser of the life of the lease or the estimated useful life of the improvement. The Company employs judgment when making assumptions about the estimated useful lives and depreciation periods the
      Company assigns to property, plant and equipment, and when events or changes in circumstances such as a significant industry downturn, plant closures, technological obsolescence, or other occurrences indicate that their carrying amounts may not be
      recoverable.&lt;/div&gt;
</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MinimumMember"
      id="Fact_eec1f05d8fd2433b9c1a60e34e4d0097">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember_RangeAxis_MaximumMember"
      id="Fact_01ed77865029400a8e394725483d57e0">P39Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember"
      id="Fact_811002ddf15e46bfb93f6b6adb7898b9">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember"
      id="Fact_0bbdea80e0d740259d468486cf6f8161">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember"
      id="Fact_fd3652ca4cb041cdb77308076dabd38e">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember"
      id="Fact_204288c1c7df4cdaacc2f909fb6d262f">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_4dfa491fcdfe4cd79334c6d947fe5c41">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Impairment of Long-Lived Assets&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of such
      assets may not be recoverable. Determinations of recoverability are based upon the Company&#x2019;s judgment and estimates of undiscounted future cash flows resulting from the use of the assets and their eventual disposition. Measurement of an impairment
      loss for long-lived assets that the Company expects to hold and use is based on the fair value of the assets, determined using a market or income approach, compared with the carrying value of the asset. The carrying values of assets determined to be
      impaired would be reduced to their estimated fair values.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;Property, plant and equipment and other long-lived assets to be sold or otherwise disposed of are
        reported at the lower of carrying amount or fair value less cost to sell.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <plab:TreasuryStockPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_af0db00091324125a3bea7e9bcc29e6a">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Treasury Stock&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;The Company records treasury stock purchases under the cost method,
      recording the entire cost of the acquired stock as treasury stock. Gains and losses on subsequent reissuances would be credited or charged to additional paid-in capital, and the Company would employ the average cost method (with average cost being
      determined separately for each share repurchase program), in the event that the Company subsequently reissues shares. When the Company retires the Company&#x2019;s treasury stock, any excess of the repurchase price paid over par value is allocated between
      additional paid-in capital and retained earnings.&lt;/div&gt;
</plab:TreasuryStockPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_6c23014256654bdd8c75ce2174dea7e7">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Revenue Recognition&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;The Company recognizes revenue when, or as, control of a good or service transfers to a customer, in
        an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those goods or services. The Company accounts for an arrangement as a revenue contract when each party has approved and is committed
        to perform under the contract, the rights of the contracting parties regarding the goods or services to be transferred and the payment terms are identifiable, the arrangement has commercial substance, and collection of consideration is probable.
        Substantially all of the Company&#x2019;s revenue comes from the sales of photomasks. The Company typically contracts with the Company&#x2019;s customers to sell sets of photomasks, which are comprised of multiple layers, the predominance of which the Company
        invoices as they ship to customers. As the photomasks are manufactured to customer specifications, they have no alternative use to the Company and, as the Company&#x2019;s contracts generally provide the Company with the right to payment for work
        completed to date, the Company recognizes revenue as the Company performs, or &#x201c;over time,&#x201d; on most of the Company&#x2019;s contracts. The Company measures the Company&#x2019;s performance to date using an input method, which is based on the Company&#x2019;s estimated
        costs to complete the various manufacturing phases of a photomask. At the end of a reporting period, there are a number of uncompleted revenue contracts on which the Company has performed; for any such contracts under which the Company is entitled
        to be compensated for the Company&#x2019;s costs incurred plus a reasonable profit, the Company recognizes revenue and a corresponding contract asset for such performance. The Company accounts for shipping and handling activities that the Company performs
        after a customer obtains control of a good as being activities to fulfill the Company&#x2019;s promise to transfer the good to the customer, rather than as promised services, or performance obligations, under the contract. The Company reports the
        Company&#x2019;s revenue net of any sales or similar taxes the Company collects on behalf of governmental entities.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;As stated above, photomasks are manufactured to customer specifications in accordance with their proprietary designs; thus, they are
      individually unique. Due to their uniqueness and other factors, their transaction prices are individually established through negotiations with customers; consequently, the Company&#x2019;s photomasks do not have standard or &#x201c;list&#x201d; prices. The transaction
      prices of the vast majority of the Company&#x2019;s revenue contracts include only fixed amounts of consideration. In certain instances, such as when the Company offers a customer an early payment discount, an estimate of variable consideration would be
      included in the transaction price, but only to the extent that a significant reversal of revenue would not occur when the uncertainty related to the variability was resolved.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;&lt;span style="font-size: 10pt;"&gt;Contract Assets and Contract Liabilities&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company recognizes a contract asset when the Company&#x2019;s performance under a contract precedes the Company&#x2019;s receipt of
      consideration from a customer, or before payment is due, and the Company&#x2019;s receipt of consideration is conditional upon factors other than the passage of time. Contract assets reflect the Company&#x2019;s transfer of control to customers of photomasks that
      are in process or completed but not yet shipped to customers. A receivable is recognized when the Company has an unconditional right to payment for the Company&#x2019;s performance, which generally occurs when the Company ships the photomasks. The Company&#x2019;s
      contract assets primarily consist of a significant amount of the Company&#x2019;s in-process production orders and fully manufactured photomasks which have not yet shipped, for which the Company has an enforceable right to collect consideration (including a
      reasonable profit) in the event the in-process orders are cancelled by customers. On an individual contract basis, the Company nets contract assets with contract liabilities (deferred revenue) for financial reporting purposes. The Company&#x2019;s net
      credit losses on the accounts receivable during 2024 were insignificant. The Company did not impair any contract assets or accounts
      receivable in 2024 or 2023.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Contract Costs&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company pays commissions to third-party sales agents for certain sales that they procure on the Company&#x2019;s behalf. However, the
      bases of the commissions are the transaction prices of the sales, which are completed in less than one year; thus, no relationship is established with a customer that will result in future business. Therefore, the Company would not recognize any
      portion of these sales commissions as costs of obtaining a contract, nor does the Company currently foresee other circumstances under which the Company would recognize such assets.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;span style="font-family: 'Times New Roman'; font-weight: bold; font-style: italic;"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;As the Company is typically required to fulfill customer orders within a short time period, the
        Company&#x2019;s backlog of orders is generally not in excess of &lt;span style="-sec-ix-hidden:Fact_5703f7f4215845d39c53f0c87db95a93"&gt;one&lt;/span&gt; to &lt;span style="-sec-ix-hidden:Fact_6a757c41eb204cc49bd749b3122d8f51"&gt;two&lt;/span&gt; weeks for IC photomasks and &lt;span style="-sec-ix-hidden:Fact_0b61858f2adb4362aa480cffdbcf8a66"&gt;two&lt;/span&gt; to &lt;span style="-sec-ix-hidden:Fact_fd0da33cff84449793d061ed13c41db6"&gt;three&lt;/span&gt; weeks for FPD photomasks. However, the demand for some IC photomasks can extend beyond the traditional time period; thus the backlog, in some
        individual cases, can extend to as long as &lt;span style="-sec-ix-hidden:Fact_9a2dc09c502043edb6ecdcfd73ea6e78"&gt;two&lt;/span&gt; to three months. More recently however, backlogs for most high demand products have returned to historical levels of less than a month. As allowed under ASC 606 &#x2013; &lt;span style="font-style: italic;"&gt;Revenue Contracts
          with Customers,&lt;/span&gt; the Company has elected not to disclose the Company&#x2019;s remaining performance obligations, which represent the costs associated with the completion of the manufacturing process of in-process photomasks related to contracts
        that have an original duration of one year or less.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Product Warranties&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The Company&#x2019;s photomasks are sold under warranties that generally range from &lt;span style="-sec-ix-hidden:Fact_8a2b9076b8e94965b895c6c0a1257b9a"&gt;one&lt;/span&gt; to twenty-four months. The Company warrants that the Company&#x2019;s
      photomasks conform to customer specifications, and the Company will typically repair, replace, or issue a refund for any photomasks that fail to do so. The warranties do not represent separate performance obligations in the Company&#x2019;s revenue
      contracts. Historically, customer claims under warranties have been immaterial.&lt;/div&gt;
</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="c20221101to20231031"
      decimals="-6"
      id="Fact_14cabce1f43a4397b3ce9deea9c61584"
      unitRef="U001">0</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="c20231101to20241031"
      decimals="-6"
      id="Fact_0362ba9915c544d4b2a51071341ea4b6"
      unitRef="U001">0</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:CapitalizedContractCostImpairmentLoss
      contextRef="c20221101to20231031"
      decimals="-6"
      id="Fact_604649c3e02947518e6acdfd4a426f7a"
      unitRef="U001">0</us-gaap:CapitalizedContractCostImpairmentLoss>
    <us-gaap:CapitalizedContractCostImpairmentLoss
      contextRef="c20231101to20241031"
      decimals="-6"
      id="Fact_42775eb3fc824cd6aed551dc21de3d98"
      unitRef="U001">0</us-gaap:CapitalizedContractCostImpairmentLoss>
    <plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod
      contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember_RangeAxis_MaximumMember"
      id="Fact_8dc3f6b2322c4320b3c35a45b2159502">P3M</plab:CustomerOrdersExtendedTimingOfSatisfactionPeriod>
    <plab:PeriodOfWarranty
      contextRef="c20231101to20241031_RangeAxis_MaximumMember"
      id="Fact_44abf7a1e27d43b5967a6057a7bb1f81">P24M</plab:PeriodOfWarranty>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_71454132d3f846f8bf0974ea2a655088">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;&#160;&#160;&#160; The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the
          Company commits to entering the agreement and evaluates at that time whether the lease is an operating lease or a finance lease. The Company recognizes right-of-use assets and lease liabilities for operating and finance leases with terms greater
          than 12 months. Please refer to Note 11 &#x2013; &lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt; for additional information.&lt;br/&gt;
          &lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; The Company&#x2019;s involvement in lease arrangements has typically been as a lessee. The Company determines if an agreement is, or contains, a lease on the earlier of the date of the agreement or the date on which the Company commits to
          entering the agreement. An arrangement is determined to be a lease when it conveys to the Company the right to control the use of an identified asset for a period of time in exchange for consideration. The Company&#x2019;s having the right to control an
          identified asset is determined by whether the Company is entitled to substantially all of its economic benefits and can direct its use. The Company recognizes leases on the Company&#x2019;s consolidated balance sheet when a lessor makes an asset
          underlying a lease having a term in excess of twelve months available for the Company&#x2019;s use. As allowed under ASC Topic 842 &#x2013; &#x201c;&lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt;&#x201d; (&#x201c;Topic 842&#x201d;), the Company has elected 1) not to apply the recognition
          requirements to leases that, at their commencement dates, have lease terms of twelve months or less and do not include options to purchase their underlying assets that the Company is reasonably certain to exercise and 2) for all classes of
          assets, the practical expedient to not separate lease components of a contract from non-lease components of a contract. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;&lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; If an arrangement is determined to be, or includes a lease, the Company then applies the classification criteria in ASC 842 - &lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt; to determine whether the lease is a finance lease or an
          operating lease. For both types of leases, at their commencement dates (which are the dates on which a lessor makes an underlying asset available for the Company&#x2019;s use), the Company recognizes Right-of-Use (&#x201c;ROU&#x201d;) assets, which represent the
          Company&#x2019;s rights to use the underlying assets, and lease liabilities which represent the Company&#x2019;s obligation to make payments for such rights. The present value of lease payments over the term of the lease provides the basis for the initial
          measurement of ROU assets and their related lease liabilities. Variable lease payments, other than those that are dependent on an index or on a rate (at which they are measured on their commencement dates), are not included in the measurement of
          ROU assets and their related lease liabilities. Lease terms include extension periods if the lease agreement includes an option to extend the lease that the Company is reasonably certain to exercise. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; The initial measurement process for finance leases and operating leases is the same, except that, for operating leases, the Company generally applies the
          Company&#x2019;s incremental borrowing rates for collateralized borrowings over terms similar to those of the leases to determine the lease liability while, for finance leases, the Company uses the interest rates implicit in the leases. The initial
          measurement of ROU assets may require further adjustments for lease prepayments and initial direct costs the Company incurs. &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 9pt; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; Operating leases are expensed on a straight-line basis over the terms of the leases, and are included in the consolidated statement of income in &lt;span style="font-style: italic;"&gt;Cost of goods sold, Selling, general and administrative&lt;/span&gt;, or &lt;span style="font-style: italic;"&gt;Research and development&lt;/span&gt; expense in accordance with the use of the underlying asset. Finance lease ROU
          assets are amortized over the estimated useful life of the underlying asset; the expenses are included in the consolidated statement of income in &lt;span style="font-style: italic;"&gt;Cost of goods sold&lt;/span&gt;. Finance lease liabilities are
          subsequently remeasured by increasing the liability to reflect interest accrued during a period and decreasing the liability to reflect payments made during the period. Interest expense incurred on finance leases is included in &lt;span style="font-style: italic;"&gt;Interest expense&lt;/span&gt; on the consolidated statements of income.&lt;br/&gt;
          &lt;br/&gt;
          &#160;&#160;&#160;&#160;&#160;&#160;&#160; Cash paid for operating leases and interest paid for finance leases are included in the consolidated statement of cash flows as operating activities in &lt;span style="font-style: italic;"&gt;Accounts payable, accrued liabilities and other&lt;/span&gt;;
          cash paid for finance lease principal is included in &lt;span style="font-style: italic;"&gt;Repayments of debt&lt;/span&gt; in the financing activities section of the consolidated statement of cash flows.&lt;/span&gt; &lt;/div&gt;
</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="c20231101to20241031"
      id="Text_7804b844c9cf46e2a9ecc78b9e0dbb2f">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Share-Based Compensation&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We recognize share-based compensation expense on a straight-line basis over the requisite service period during which the awards
      are expected to vest. Share-based compensation expense includes the estimated effects of forfeitures, which are adjusted over the requisite service period to the extent actual forfeitures differ, or are expected to differ, from such estimates.
      Changes in estimated forfeitures are recognized in the period of change and will impact the amount of expense to be recognized in future periods. Determining the appropriate option pricing model, calculating the grant date fair value of share-based
      awards, and estimating forfeiture rates requires considerable judgment, including estimations of stock price volatility and the expected term of options granted.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="display: inline; float: none; letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 24px; text-transform: none;"&gt;We use the Black-Scholes option pricing model to value employee stock
        options. The Company estimates stock price volatility based on daily averages of the Company&#x2019;s common stock&#x2019;s historical volatility over a term approximately equal to the estimated time period the grant will remain outstanding. The expected term of
        options and forfeiture rate assumptions are derived from historical data.&lt;/span&gt;&lt;/div&gt;
</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="c20231101to20241031"
      id="Text_3286115bcc1d475bb2afeb5857cb77b1">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Research and Development&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Research and development costs are expensed as incurred and consist primarily of development efforts related to high-end process
      technologies for advanced subwavelength reticle solutions for IC and FPD photomask technologies. Research and development expenses were $16.6
      million, $13.7 million, and $18.3
      million for the years ended October 31, 2024, 2023 and 2022, respectively.&lt;/div&gt;
</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20231101to20241031"
      decimals="-5"
      id="Fact_e71764184a46483fa1d8df341af8864b"
      unitRef="U001">16600000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20221101to20231031"
      decimals="-5"
      id="Fact_30eb22e597c9443c9cdbae7edf9b989b"
      unitRef="U001">13700000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20211101to20221031"
      decimals="-5"
      id="Fact_af8da8ab48d64119bc6deafe13c136d7"
      unitRef="U001">18300000</us-gaap:ResearchAndDevelopmentExpense>
    <plab:GovernmentGrantsPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_d9ab80eb4c914d549b9d317cc07b6a49">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;
     &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Government Grants&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt;The &lt;span style="font-size: 10pt;"&gt;Company receives or expects to receive in the future, various types of
          government assistance, primarily in the form of grants or refundable tax credits.&#160; Government assistance is recognized when there is reasonable assurance that: (1) the Company will comply with the relevant conditions and (2) the assistance will
          be received. Government assistance related to reimbursing fixed asset purchases, such as reimbursement grants and refundable federal investment tax credits, are recorded as a reduction to the related asset(s), which then reduces depreciation
          expense over the expected useful life of the asset on a straight-line basis. If some, or all, of the amount of government assistance becomes repayable (e.g. due to non-fulfillment of the grant conditions) or there is no longer reasonable
          assurance the amount will be received (e.g. due to additional interpretive guidance) then the adjustment is accounted for prospectively as a change in accounting estimate. The effect of the change in estimate is recognized in the period in which
          management concludes that it is no longer reasonably assured that all of the grant conditions will be met. A corresponding financial liability is recognized for the amount of the repayment, if any&lt;/span&gt;.&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt; &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;Company accounts for funds the Company receives from government grants by either reducing the costs of the
        assets (if the grant relates to capital expenditures) or expenses which could be &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Cost of goods sold, Selling, general and administrative, or Research and development expenses&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the consolidated statements of income.&#160; If the funds the Company receives cannot be attributed to specific assets or expenses, they would be recognized as other income, and included in &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Interest income and other income, net&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the consolidated statements of income. Funds the Company receive from government grants are classified in
        the Company&#x2019;s consolidated statements of cash flows as either &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Net cash
        provided by operating activities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; or &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Net cash provided by investing activities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;, in accordance with how the Company expends the funds. When a grant is received before conditions of the grant have been met, the
        grant is recorded in &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Accrued liabilities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; or &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;"&gt;Other liabilities&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; in the Consolidated Balance Sheets.&#160; For the years ended October 31, 2024, October 31, 2023, and October 31, 2022, grants recorded in the Company&#x2019;s Consolidated Financial Statements were not material.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;span style="font-weight: normal; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;&#160;&lt;span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; color: rgb(0, 0, 0);"&gt;The &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Company expects to receive refundable
        federal investment tax credits through the CHIPS Act in connection with ongoing expansion projects. As of October 31, 2024, the Company has reduced property, plant and equipment, net by $5.0 million as a result of expected refundable tax credits in connection with the CHIPS Act&lt;span style="letter-spacing: normal; text-align: left; text-indent: 24px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial;"&gt;. The Company has also applied for direct capital grants through the CHIPS Act in connection with proposed projects.&lt;br/&gt;
        &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</plab:GovernmentGrantsPolicyTextBlock>
    <plab:IncreaseDecreaseInPropertyAndEquipmentNet
      contextRef="c20231101to20241031"
      decimals="-5"
      id="Fact_bd13222407f84aa4bc755f8712bd3dfd"
      unitRef="U001">-5000000</plab:IncreaseDecreaseInPropertyAndEquipmentNet>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_f012e77e19bb4b42a2853747a2123a52">
&lt;div&gt;
     &lt;span style="font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt; &lt;/span&gt; &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Income Taxes&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;The income tax provision is computed on the basis of the income or loss before income taxes for each entity in its respective tax
      jurisdiction. Deferred income taxes reflect the tax effects of differences between the carrying amounts of assets and liabilities for financial reporting purposes and their amounts used for income tax purposes, as well as the tax effects of net
      operating losses and tax credit carryforwards. We employ judgment and make assumptions when establishing valuation allowances for deferred income tax assets, if their realization is not deemed to be more likely than not, by considering future market
      growth, operating forecasts, future taxable income, and the mix of earnings among the tax jurisdictions in which we operate. Accordingly, income taxes charged against earnings may have been impacted by changes in the valuation allowances. We are
      eligible for investment tax credits in U.S. and non-U.S. tax jurisdictions. We account for investment tax credits under the &#x201c;flow-through&#x201d; method of accounting. As permitted in ASC 740 &#x201c;Income Taxes&#x201d;, under the flow-through method of accounting, the
      tax benefit from an investment tax credit is recorded as a reduction of income taxes in the period in which the credit is generated.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We consider income taxes in each of the tax jurisdictions in which we operate in order to determine our effective income tax rate.
      Our current income tax expense is thus identified, and temporary differences resulting from differing treatments of items for tax and financial reporting purposes are assessed. These differences result in deferred tax assets, which are presented on
      our consolidated balance sheets, and deferred tax liabilities, which are included in &lt;span style="font-style: italic;"&gt;Other liabilities&lt;/span&gt; on our consolidated balance sheets.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;We account for uncertain tax positions by recording a liability for unrecognized tax benefits
        resulting from uncertain tax positions taken, or expected to be taken, in our tax returns. We include any applicable interest and penalties related to uncertain tax positions in the liability and in our income tax provision.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_bddc8012e6274051bac735e2108638f5">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;
    &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Earnings Per Share&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;&#160;Basic earnings per share (&#x201c;EPS&#x201d;) attributed to Photronics shareholders for both basic and diluted is
        computed independently for each period presented and is based on the weighted-average number of common shares outstanding for the period, excluding any dilutive common share equivalents. Diluted EPS reflects the potential dilution that could occur
        if certain share-based payment awards were exercised or earned.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ConsolidationVariableInterestEntityPolicy
      contextRef="c20231101to20241031"
      id="Text_0927dd91f28145a6b82f3b189b8c4932">
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Variable Interest Entities&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We account for the investments the Company makes in certain legal entities in which equity investors do not have: 1) sufficient
      equity at risk for the legal entity to finance its activities without additional subordinated financial support or, 2) as a group, the holders of the equity investment at risk do not have either the power, through voting or similar rights, to direct
      the activities of the legal entity that most significantly impact the entity&#x2019;s economic performance or, 3) the obligation to absorb the expected losses of the legal entity or the right to receive expected residual returns of the legal entity as
      &#x201c;variable interest entities&#x201d;, or &#x201c;VIEs&#x201d;.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We consolidate the results of any such entity in which the Company has determined that the Company has a controlling financial
      interest. The Company would have a &#x201c;controlling financial interest&#x201d; (and thus be considered the &#x201c;primary beneficiary&#x201d; of the entity) in such an entity when the Company has both the power to direct the activities that most significantly affect the
      VIE&#x2019;s economic performance and the obligation to absorb the losses of, or right to receive the benefits from, the VIE that could be potentially significant to the VIE. On a quarterly basis, the Company reassesses whether the Company has a controlling
      financial interest in any investments the Company has in these entities.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;We would account for investments the Company makes in VIEs in which the Company has determined that the Company does not have a
      controlling financial interest but have a significant influence over, and hold at least a twenty percent ownership interest in, using the
      equity method. An investment not meeting the parameters to be accounted for under the equity method would be accounted for using the cost method, unless the investment had a readily determinable fair value, at which value it would then be reported.&lt;/div&gt;
</us-gaap:ConsolidationVariableInterestEntityPolicy>
    <us-gaap:VariableInterestEntityOwnershipPercentage
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember"
      decimals="2"
      id="Fact_1b219446f2294a27bcf989ce380f8a31"
      unitRef="U005">0.20</us-gaap:VariableInterestEntityOwnershipPercentage>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_fb673bbf6ff04c398160bf6e1869201f">&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: italic; font-variant: normal; font-weight: bold; font-size: 10pt;"&gt;Recent Accounting Pronouncements&lt;/span&gt;
&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;&#160; In December 2023, the FASB issued ASU 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to
          Income Tax Disclosures&#x201d;, to enhance the transparency and decision usefulness of income tax disclosures. The amendments in this Update related to the rate reconciliation and income taxes paid disclosures to improve the transparency of income tax
          disclosures by requiring (1) consistent categories and greater disaggregation of information in the rate reconciliation and (2) income taxes paid disaggregated by jurisdiction. The amendments allow investors to better assess, in their capital
          allocation decisions, how an entity&#x2019;s worldwide operations and related tax risks and tax planning and operational opportunities affect its income tax rate and prospects for future cash flows. The guidance in this Update will be effective for
          Photronics in its fiscal year 2026 Form 10-K, with early application of the amendments allowed. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#x2019;s disclosures.&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt; In November 2023, the FASB issued ASU 2023-07, &#x201c;Segment Reporting (Topic 280): Improvements
          to Reportable Segment Disclosures&#x201d;, which improves reportable segment disclosure requirements, primarily through enhanced disclosures about significant segment expenses. The guidance in this Update is effective for Photronics in its fiscal year
          2025 Form 10-K, with early adoption permitted. The Company is currently evaluating the effect the adoption of this ASU may have on the Company&#x2019;s disclosures.&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;
</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_f6b22b523d134d49934717d1faec9324">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;"&gt;NOTE 2 &#x2013; ACCOUNTS RECEIVABLE&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;The

















































          components of&#160;&lt;/span&gt;&lt;span style="font-style: italic; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;Accounts Receivable&#160;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;at the
          balance sheet dates are presented below.&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt; October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Accounts Receivable&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;172,741&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;171,433&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Unbilled Receivable&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;29,215&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;24,593&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Allowance for Credit Losses&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;(1,126&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;(1,099&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-family: 'Times New Roman'; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;200,830&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;194,927&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="c20231101to20241031"
      id="Text_9680cedc4a8542f3862ca62f62f75da9">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;The

















































          components of&#160;&lt;/span&gt;&lt;span style="font-style: italic; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;Accounts Receivable&#160;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;at the
          balance sheet dates are presented below.&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt; October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Accounts Receivable&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;172,741&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;171,433&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Unbilled Receivable&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;29,215&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;24,593&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Allowance for Credit Losses&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;(1,126&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;(1,099&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-family: 'Times New Roman'; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;200,830&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;194,927&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_9879b02d014f4fbd8607390bdae2e6ae"
      unitRef="U001">172741000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_b431a6dd38134acead2ee79ce22cf8b0"
      unitRef="U001">171433000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:UnbilledReceivablesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_840fe3ac6bed49b0aab07a164c6cb00d"
      unitRef="U001">29215000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:UnbilledReceivablesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_63c3cae448b24b58b45af5aff6b1f867"
      unitRef="U001">24593000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_08a8e14562d24a059870bf08089c6a7d"
      unitRef="U001">1126000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_e2303f57ce0e43989a1161533b9664dd"
      unitRef="U001">1099000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_47590b11b9f14cfa815a7d66101258b4"
      unitRef="U001">200830000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_9453c9b3e70141e8b2374c58ba621ffc"
      unitRef="U001">194927000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:OtherCurrentAssetsTextBlock
      contextRef="c20231101to20241031"
      id="Text_f38c6442671e40a79989e6091057515d">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 3 - OTHER CURRENT ASSETS&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Other current assets&lt;/span&gt; at
      the balance sheet dates.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,532&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,984&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Prepaid expenses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,770&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,031&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Recoverable value added taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,684&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Prepaid and refundable income taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,875&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,489&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other&lt;sup&gt; (1)&lt;/sup&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,175&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,537&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;33,036&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;28,353&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;
      &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;"&gt;
              &lt;div style="margin: 0px 0px; padding: 0px 0px; color: #000000; text-align: left;"&gt;&lt;sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;"&gt;(1)&lt;/sup&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;"&gt;
              &lt;div style="margin: 0px 0px; padding: 0px 0px; color: #000000;"&gt;The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#x2019;s ongoing expansion projects.&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

      &lt;div&gt; &lt;br/&gt;
      &lt;/div&gt;

    &lt;/div&gt;
</us-gaap:OtherCurrentAssetsTextBlock>
    <us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_95a83c466cad48d893006ca46849ccdf">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Other current assets&lt;/span&gt; at
      the balance sheet dates.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,532&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,984&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Prepaid expenses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,770&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,031&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Recoverable value added taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,684&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Prepaid and refundable income taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,875&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,489&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other&lt;sup&gt; (1)&lt;/sup&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,175&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,537&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;33,036&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;28,353&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;
      &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="text-align: right; vertical-align: top; width: 18pt; font-size: 10pt;"&gt;
              &lt;div style="margin: 0px 0px; padding: 0px 0px; color: #000000; text-align: left;"&gt;&lt;sup style="color: rgb(0, 0, 0); vertical-align: text-top; line-height: 1; font-size: smaller;"&gt;(1)&lt;/sup&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td style="text-align: left; vertical-align: top; width: auto; font-size: 10pt;"&gt;
              &lt;div style="margin: 0px 0px; padding: 0px 0px; color: #000000;"&gt;The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#x2019;s ongoing expansion projects.&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

      &lt;div&gt; &lt;br/&gt;
      &lt;/div&gt;

    &lt;/div&gt;
</us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_11557859a71e43fd8f151f53d36eec2b"
      unitRef="U001">11532000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_cfe290a51009442e8c0ddfb1d709ceed"
      unitRef="U001">10984000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e501f49e427e432c81ddd3e5a44d23f9"
      unitRef="U001">5770000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_e4a0566a908f45989acf4d0bfd583ed2"
      unitRef="U001">10031000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:ValueAddedTaxReceivableCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_40700ca5874d4bfb93d8db42a5a54057"
      unitRef="U001">2684000</us-gaap:ValueAddedTaxReceivableCurrent>
    <us-gaap:ValueAddedTaxReceivableCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_51446679b72e4c38b859958c4c056ed5"
      unitRef="U001">2312000</us-gaap:ValueAddedTaxReceivableCurrent>
    <plab:PrepaidAndRefundableIncomeTaxes
      contextRef="c20241031"
      decimals="-3"
      id="Fact_6a72e4dd73d04dbe9b7382fb4e654dea"
      unitRef="U001">1875000</plab:PrepaidAndRefundableIncomeTaxes>
    <plab:PrepaidAndRefundableIncomeTaxes
      contextRef="c20231031"
      decimals="-3"
      id="Fact_328169d1e1ad4f58bc3eedea0c5d47b9"
      unitRef="U001">2489000</plab:PrepaidAndRefundableIncomeTaxes>
    <us-gaap:OtherAssetsMiscellaneousCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_7589dd8b6d604afeb7580519af0b90dd"
      unitRef="U001">11175000</us-gaap:OtherAssetsMiscellaneousCurrent>
    <us-gaap:OtherAssetsMiscellaneousCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_50ad7cbf76a84c49b0bd53e1c9116272"
      unitRef="U001">2537000</us-gaap:OtherAssetsMiscellaneousCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_71e9ef6d24fd467f83663e3fc471ef6c"
      unitRef="U001">33036000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8fc2e0c777834034a889c73ee810b98f"
      unitRef="U001">28353000</us-gaap:OtherAssetsCurrent>
    <plab:FederalInvestmentTaxCreditsRefundReceivableCurrent
      contextRef="c20241031"
      decimals="-6"
      id="Fact_68c73e4f75ad4a6cba5a902e86741a7d"
      unitRef="U001">5000000</plab:FederalInvestmentTaxCreditsRefundReceivableCurrent>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_0f5e2f1f19d94a388b3f730bb07f0a4e">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 4 - INVENTORIES&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of&#160;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Inventories&#160;&lt;/span&gt;at the balance sheet dates are presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Raw materials&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,128&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;48,948&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Work in process&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;398&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,010&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finished goods&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,527&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;49,963&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_ca7e8388b9384589994a86f5a1899020">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of&#160;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Inventories&#160;&lt;/span&gt;at the balance sheet dates are presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Raw materials&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,128&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;48,948&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Work in process&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;398&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,010&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finished goods&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,527&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;49,963&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="c20241031"
      decimals="-3"
      id="Fact_5c09d874353449ebb565310da9fddeca"
      unitRef="U001">56128000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="c20231031"
      decimals="-3"
      id="Fact_2c556eae548b4b39917ee6c668d14d08"
      unitRef="U001">48948000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcess
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ba22298bca884eeb861b80c48cb54567"
      unitRef="U001">398000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess
      contextRef="c20231031"
      decimals="-3"
      id="Fact_6e787b7c672d4c4fa9f048ef14333a49"
      unitRef="U001">1010000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods
      contextRef="c20241031"
      decimals="-3"
      id="Fact_333c47c5a50043a99cb09766607f6441"
      unitRef="U001">1000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7a61892d79584d4b97d04fdeb30a7e49"
      unitRef="U001">5000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_cd6c61bffe6d47c9ab1c7fa275dfaf1f"
      unitRef="U001">56527000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_24b277784a34473384c747c726c8c37b"
      unitRef="U001">49963000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_aac2d10b64e7421cb47bb17f917741d4">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 5 - PROPERTY, PLANT AND EQUIPMENT, NET&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-style: italic;"&gt;Property, plant and equipment, net&lt;/span&gt; at the balance
      sheet dates.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Land&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,419&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,378&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Buildings and improvements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;188,756&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;185,850&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Machinery and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,990,610&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,922,041&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Leasehold improvements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;19,268&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,894&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Furniture, fixtures, and office equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,091&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;15,856&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Construction in progress&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;91,213&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;55,434&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,319,357&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,209,453&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accumulated depreciation and amortization&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,574,100&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,500,209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;745,257&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;709,244&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Information on ROU assets resulting from finance leases, at the balance sheet dates, is presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Machinery and equipment&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,815&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,820&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accumulated amortization&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(10,522&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(7,655&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,165&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table presents depreciation expense (including the amortization of ROU assets) related to property, plant and
          equipment incurred during the reporting periods.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
          &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Years Ended&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;2024&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;2023&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;2022&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Depreciation and amortization expense&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;82,433&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;$&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;80,472&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;$&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;79,971&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
          &lt;/div&gt;
</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="c20231101to20241031"
      id="Text_79b6ecb62fff4c669ded01e969154c2d">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-style: italic;"&gt;Property, plant and equipment, net&lt;/span&gt; at the balance
      sheet dates.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Land&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,419&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,378&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Buildings and improvements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;188,756&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;185,850&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Machinery and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,990,610&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,922,041&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Leasehold improvements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;19,268&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,894&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Furniture, fixtures, and office equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,091&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;15,856&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Construction in progress&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;91,213&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;55,434&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,319,357&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,209,453&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accumulated depreciation and amortization&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,574,100&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,500,209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;745,257&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;709,244&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_LandMember"
      decimals="-3"
      id="Fact_c5c7dd179538454db50652fbd3638124"
      unitRef="U001">11419000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_LandMember"
      decimals="-3"
      id="Fact_5d284d6048594976a090f50e270ab7a1"
      unitRef="U001">11378000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"
      decimals="-3"
      id="Fact_b60bb62112ad499e8217356968ac983f"
      unitRef="U001">188756000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"
      decimals="-3"
      id="Fact_af7f0d6c57814329b1f539c6e1cc4def"
      unitRef="U001">185850000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"
      decimals="-3"
      id="Fact_6acef9a31564442a947960775ac0328e"
      unitRef="U001">1990610000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"
      decimals="-3"
      id="Fact_f4f4c5d5b9b840e69a074475575efca2"
      unitRef="U001">1922041000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"
      decimals="-3"
      id="Fact_eca98976132f4ef49674b35d431cb66f"
      unitRef="U001">19268000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"
      decimals="-3"
      id="Fact_d8bc5eb0c0474be0885b50dd7c53dc56"
      unitRef="U001">18894000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember"
      decimals="-3"
      id="Fact_83040e357d9f47bb83418639f12666bf"
      unitRef="U001">18091000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember"
      decimals="-3"
      id="Fact_0e0480f426f64b509f38428ba3a555f2"
      unitRef="U001">15856000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"
      decimals="-3"
      id="Fact_97c1b935a6f64e81a0bd6f48cadb095b"
      unitRef="U001">91213000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"
      decimals="-3"
      id="Fact_8a61b43c493848a6b702fb2c9dcc8a59"
      unitRef="U001">55434000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241031"
      decimals="-3"
      id="Fact_aeeb7a97a65a43d3bbf8be0c634f4f6f"
      unitRef="U001">2319357000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20231031"
      decimals="-3"
      id="Fact_4d53153a111b4ba58b5b7a0b6a42cc8a"
      unitRef="U001">2209453000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20241031"
      decimals="-3"
      id="Fact_55ae85eeb0834e9f81230e57f8c148cd"
      unitRef="U001">1574100000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20231031"
      decimals="-3"
      id="Fact_a526456009e14a6097e700c7315f82ba"
      unitRef="U001">1500209000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_3288d7c873734aa6a97773463afd6dde"
      unitRef="U001">745257000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f8288b040b64427eb6ed525e9b024571"
      unitRef="U001">709244000</us-gaap:PropertyPlantAndEquipmentNet>
    <plab:FinanceLeaseRightOfUseAssetsTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_30c0ca2962524406b31571acd9cb8cd9">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Information on ROU assets resulting from finance leases, at the balance sheet dates, is presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Machinery and equipment&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,815&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,820&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accumulated amortization&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(10,522&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(7,655&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,165&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:FinanceLeaseRightOfUseAssetsTableTextBlock>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f6699e1fa7f54d46b5f615fc3af01eea"
      unitRef="U001">42815000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="c20231031"
      decimals="-3"
      id="Fact_2bef016c559a41a4b10275741ca2bc4f"
      unitRef="U001">42820000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization
      contextRef="c20241031"
      decimals="-3"
      id="Fact_7fc4bb216dda4f90844c1cace5e7d97f"
      unitRef="U001">10522000</us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization
      contextRef="c20231031"
      decimals="-3"
      id="Fact_e55ccba1c4594a00961c11a132591f50"
      unitRef="U001">7655000</us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="c20241031"
      decimals="-3"
      id="Fact_ea7283a7343941f9b6cb5d858df73db8"
      unitRef="U001">32293000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8858d5eeb0734663a1d0490bb49a8872"
      unitRef="U001">35165000</us-gaap:FinanceLeaseRightOfUseAsset>
    <plab:DepreciationAndAmortizationExpenseTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_68ee23a8e1034c4cb51cec9b2875bec9">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table presents depreciation expense (including the amortization of ROU assets) related to property, plant and
          equipment incurred during the reporting periods.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
          &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Years Ended&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;2024&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;2023&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                  &lt;div style="text-align: center; font-weight: bold;"&gt;2022&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
                  &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Depreciation and amortization expense&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;82,433&lt;/td&gt;

    &lt;td colspan="1" style="font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;$&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;80,472&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;$&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-size: 10pt;"&gt;79,971&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
          &lt;/div&gt;
</plab:DepreciationAndAmortizationExpenseTableTextBlock>
    <us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3022e28d00a44ebd916a492947aa66c2"
      unitRef="U001">82433000</us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_bbf6b5e1ce004ca985bb84849242778c"
      unitRef="U001">80472000</us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_cef5644b270944c6b21df77eae48e291"
      unitRef="U001">79971000</us-gaap:CostOfGoodsAndServicesSoldDepreciationAndAmortization>
    <us-gaap:VariableInterestEntityDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_bb24bf06488d40f08b4657882269e9d1">
&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 6 - PDMCX JOINT VENTURE&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;In January 2018, Photronics&lt;span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;,&lt;/span&gt; Inc., through its wholly owned&lt;span style="color: rgb(0, 0, 0);"&gt; Photronics&lt;/span&gt; Singapore PTE. LTD. subsidiary
        (hereinafter, within this Note &#x201c;we&#x201d;, &#x201c;Photronics&#x201d;, &lt;span style="color: rgb(0, 0, 0);"&gt;&#x201c;&lt;/span&gt;us&lt;span style="color: rgb(0, 0, 0);"&gt;&#x201d;,&lt;/span&gt; or &#x201c;our&#x201d;), and DNP, through its wholly owned subsidiary &#x201c;DNP Asia Pacific PTE, Ltd.&#x201d;, entered into a joint
        venture under which DNP obtained a &lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;49.99%&lt;span style="color: rgb(0, 0, 0);"&gt; interest in the&lt;span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; Company&#x2019;s&lt;/span&gt; IC business in Xiamen, China. &lt;/span&gt;The
        joint venture, which the Company refers to as &#x201c;PDMCX&#x201d;, was established to develop and manufacture photomasks for semiconductors. The Company entered into this joint venture to enable the Company to compete more effectively for the merchant
        photomask business in China, and to benefit from the additional resources and investment that DNP provides to enable the Company to offer advanced-process technology to our customers&lt;span style="color: rgb(0, 0, 0);"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In 2020, in combination with local financing obtained by PDMCX, Photronics and DNP fulfilled their investment obligations under the PDMCX operating
      agreement (&lt;span style="color: rgb(0, 0, 0);"&gt;&#x201c;&lt;/span&gt;the Agreement&lt;span style="color: rgb(0, 0, 0);"&gt;&#x201d;&lt;/span&gt;). As discussed in Note 8, liens were granted to the local financing entity on property, plant, and equipment and were paid off during
      fiscal year 2023 and there was no remaining debt at October 31, 2023.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Under the Agreement, should either &lt;span style="color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;Photronics&#x2019; or DNP&#x2019;s&lt;/span&gt; ownership interest fall below 20.0%
      for a period of more than &lt;span style="-sec-ix-hidden:Fact_549b7473dfe1448fa5a93e38f911cb8c"&gt;six&lt;/span&gt; consecutive months, such party (an &#x201c;exiting party&#x201d;) has the option to sell to the other party, and the other
      party has the option to purchase from such exiting party, the exiting party&#x2019;s remaining ownership interest. In either case, the sales of ownership interests would be at the exiting party&#x2019;s ownership percentage of the joint venture&#x2019;s net book value,
      with closing to take place within &lt;span style="-sec-ix-hidden:Fact_19a45af3a76e4d89938605be47b11523"&gt;three&lt;/span&gt; business days of obtaining required approvals and clearance.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;The following table presents net income the Company recorded from the operations of PDMCX during the reporting periods. &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Years Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income from PDMCX&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,074&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;25,098&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;16,714&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As required by the guidance in ASC Topic 810 - &#x201c;&lt;span style="font-style: italic;"&gt;Consolidation&lt;/span&gt;&#x201d;, the Company evaluated&#160; the Company&#x2019;s involvement
      in PDMCX for the purpose of determining whether the Company should consolidate its results in the Company&#x2019;s financial statements. The initial step of the Company&#x2019;s evaluation was to determine whether PDMCX was a VIE. Due to its lack of sufficient
      equity at risk to finance its activities without additional subordinated financial support, the Company determined that it is a VIE. Having made this determination, the Company then assessed whether the Company was the primary beneficiary of the VIE,
      and concluded that the Company was the primary beneficiary during the current and prior years reporting periods; thus, as required, the PDMCX financial results have been consolidated with Photronics. The Company&#x2019;s conclusion was based on the fact
      that the Company held a controlling financial interest in PDMCX (which resulted from the Company&#x2019;s having the power to direct the activities that most significantly impacted its economic performance) and had both the obligation to absorb losses and
      the right to receive benefits that could potentially be significant to PDMCX. The Company&#x2019;s conclusion that the Company had the power to direct the activities that most significantly affected the economic performance of PDMCX during the current and
      prior year periods were based on the Company&#x2019;s right to appoint the majority of its Board of Directors, which has, among others, the powers to manage the business (through its rights to appoint and evaluate PDMCX&#x2019;s management), incur indebtedness,
      enter into agreements and commitments, and acquire and dispose of PDMCX&#x2019;s assets. In addition, as a result of the 50.01% variable interest
      the Company held during the current and prior year periods, the Company had the obligation to absorb losses, and the right to receive benefits, that could potentially be significant to PDMCX.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;
     &lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table presents the carrying amounts of PDMCX assets and liabilities included in the Company&#x2019;s consolidated balance sheets. General
      creditors of PDMCX do not have recourse to the assets of Photronics (other than the net assets of PDMCX); therefore, the Company&#x2019;s maximum exposure to loss from PDMCX is the Company&#x2019;s interest in the carrying amount of the net assets of the joint
      venture.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Carrying&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Carrying&lt;/div&gt;
            &lt;div style="text-align: center; text-indent: -9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;&#160; Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;174,059&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;87,047&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;135,960&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;67,994&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Noncurrent assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;151,039&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;75,535&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136,334&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;68,181&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;325,098&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;162,582&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;272,294&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136,175&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;40,691&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,350&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;36,305&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,156&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Noncurrent liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,320&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,660&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,873&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;937&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;44,011&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,010&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;38,178&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;19,093&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;281,087&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;140,572&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;234,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;117,082&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:VariableInterestEntityDisclosureTextBlock>
    <us-gaap:VariableInterestEntityOwnershipPercentage
      contextRef="c20180101to20180131_ConsolidatedEntitiesAxis_VariableInterestEntityNotPrimaryBeneficiaryMember"
      decimals="4"
      id="Fact_3f5cc597dd3c4e0fbf52d108f0109408"
      unitRef="U005">0.4999</us-gaap:VariableInterestEntityOwnershipPercentage>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_26ec1aec60d449d6a2923a200381fa1a"
      unitRef="U001">0</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:VariableInterestEntityOwnershipPercentage
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember_RangeAxis_MinimumMember"
      decimals="3"
      id="Fact_4c0009846461414ca157c603b23f3fbe"
      unitRef="U005">0.20</us-gaap:VariableInterestEntityOwnershipPercentage>
    <srt:ScheduleOfCondensedIncomeStatementTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_7097890e22fb4fe69da3ce01df5d3da9">
&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;The following table presents net income the Company recorded from the operations of PDMCX during the reporting periods. &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Years Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income from PDMCX&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,074&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;25,098&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;16,714&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;
</srt:ScheduleOfCondensedIncomeStatementTableTextBlock>
    <us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"
      decimals="-3"
      id="Fact_63a8e5b75ad046f78923c391da057030"
      unitRef="U001">20074000</us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss>
    <us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss
      contextRef="c20221101to20231031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"
      decimals="-3"
      id="Fact_5038c060cdc44b119ed15d7af43b7894"
      unitRef="U001">25098000</us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss>
    <us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss
      contextRef="c20211101to20221031_ConsolidatedEntitiesAxis_PhotronicsAndDNPMember"
      decimals="-3"
      id="Fact_edb2070236a341fea40b5a4da1984b03"
      unitRef="U001">16714000</us-gaap:VariableInterestEntityActivityBetweenVIEAndEntityOperatingIncomeOrLoss>
    <plab:ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_23cc361869234dacb413d2743736827d">
&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;  &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As required by the guidance in ASC Topic 810 - &#x201c;&lt;span style="font-style: italic;"&gt;Consolidation&lt;/span&gt;&#x201d;, the Company evaluated&#160; the Company&#x2019;s involvement
      in PDMCX for the purpose of determining whether the Company should consolidate its results in the Company&#x2019;s financial statements. The initial step of the Company&#x2019;s evaluation was to determine whether PDMCX was a VIE. Due to its lack of sufficient
      equity at risk to finance its activities without additional subordinated financial support, the Company determined that it is a VIE. Having made this determination, the Company then assessed whether the Company was the primary beneficiary of the VIE,
      and concluded that the Company was the primary beneficiary during the current and prior years reporting periods; thus, as required, the PDMCX financial results have been consolidated with Photronics. The Company&#x2019;s conclusion was based on the fact
      that the Company held a controlling financial interest in PDMCX (which resulted from the Company&#x2019;s having the power to direct the activities that most significantly impacted its economic performance) and had both the obligation to absorb losses and
      the right to receive benefits that could potentially be significant to PDMCX. The Company&#x2019;s conclusion that the Company had the power to direct the activities that most significantly affected the economic performance of PDMCX during the current and
      prior year periods were based on the Company&#x2019;s right to appoint the majority of its Board of Directors, which has, among others, the powers to manage the business (through its rights to appoint and evaluate PDMCX&#x2019;s management), incur indebtedness,
      enter into agreements and commitments, and acquire and dispose of PDMCX&#x2019;s assets. In addition, as a result of the 50.01% variable interest
      the Company held during the current and prior year periods, the Company had the obligation to absorb losses, and the right to receive benefits, that could potentially be significant to PDMCX.&lt;/div&gt;
</plab:ConsolidationJointVentureVariableInterestEntityPolicyPolicyTextBlock>
    <us-gaap:VariableInterestEntityOwnershipPercentage
      contextRef="c20231101to20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="4"
      id="Fact_3bcb979d55fc4048a672c788eb232c54"
      unitRef="U005">0.5001</us-gaap:VariableInterestEntityOwnershipPercentage>
    <us-gaap:ScheduleOfVariableInterestEntitiesTextBlock
      contextRef="c20231101to20241031"
      id="Text_de377209e0664cd1b4d1d84ff84ac4ba">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table presents the carrying amounts of PDMCX assets and liabilities included in the Company&#x2019;s consolidated balance sheets. General
      creditors of PDMCX do not have recourse to the assets of Photronics (other than the net assets of PDMCX); therefore, the Company&#x2019;s maximum exposure to loss from PDMCX is the Company&#x2019;s interest in the carrying amount of the net assets of the joint
      venture.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Carrying&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Carrying&lt;/div&gt;
            &lt;div style="text-align: center; text-indent: -9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;&#160; Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;174,059&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;87,047&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;135,960&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;67,994&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Noncurrent assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;151,039&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;75,535&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136,334&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;68,181&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;325,098&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;162,582&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;272,294&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136,175&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;40,691&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,350&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;36,305&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,156&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Noncurrent liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,320&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,660&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,873&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;937&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;44,011&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,010&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;38,178&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;19,093&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;281,087&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;140,572&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;234,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;117,082&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfVariableInterestEntitiesTextBlock>
    <us-gaap:AssetsCurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_892d5c7737b74b959385ce757877eea8"
      unitRef="U001">174059000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_3ff6f7e1b5e94b24a1a9126651038c66"
      unitRef="U001">87047000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_7687a4d2277a46cda9dc7cb9106df056"
      unitRef="U001">135960000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_05ab3cbc7e424c50ac3b844ba9807a1e"
      unitRef="U001">67994000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_81210c1d0bca43a48bd9a3247494ff2b"
      unitRef="U001">151039000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_b8ae545e96ca4f57a6ee6c8d04548be5"
      unitRef="U001">75535000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_bad781beab2543fe8417e853b66e8bd3"
      unitRef="U001">136334000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_016bd8554961454db8313855ea00bcc7"
      unitRef="U001">68181000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_12ab2b59c5a4414e902a398d79ce92f8"
      unitRef="U001">325098000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_050a84ebab5748bbbbbc151cc2514172"
      unitRef="U001">162582000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_1dd22fcaab0e415c8b2651cc2004bda7"
      unitRef="U001">272294000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_66c1042a74224fdbbcf7af54692f94d8"
      unitRef="U001">136175000</us-gaap:Assets>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_0a1da626746a4317af273f821fdebcf9"
      unitRef="U001">40691000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_7ef8b9cb467f4dc1bdb2928ccf51ba7e"
      unitRef="U001">20350000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_6bc9c1d86cb34ee2a332477267143138"
      unitRef="U001">36305000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_61c9c1e5a0a14256823514dd4f9bef36"
      unitRef="U001">18156000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_27592e35357446e1b1e823b17ce7f89a"
      unitRef="U001">3320000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_4032ed120d6f4dfca6b4102a48f8c186"
      unitRef="U001">1660000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_64a31fb3262643f4aef36600e0e49826"
      unitRef="U001">1873000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_55a8a96d8bf64fb38b2ce9c8b8e68e23"
      unitRef="U001">937000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_47491dc8b2af4837a25ed11c2675aa7a"
      unitRef="U001">44011000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_eebc8b59c1754dda92f5bf37cc80f2a5"
      unitRef="U001">22010000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_550d380b52944ee7b418752a0952e12b"
      unitRef="U001">38178000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_3298a5a5b942454aaf66d28bbb2ef588"
      unitRef="U001">19093000</us-gaap:Liabilities>
    <us-gaap:AssetsNet
      contextRef="c20241031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_642a3204cdba463d89e8d705c6ad3775"
      unitRef="U001">281087000</us-gaap:AssetsNet>
    <us-gaap:AssetsNet
      contextRef="c20241031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_36144bfcf637497186304d7bffe183a8"
      unitRef="U001">140572000</us-gaap:AssetsNet>
    <us-gaap:AssetsNet
      contextRef="c20231031_ConsolidatedEntitiesAxis_PDMCXMember"
      decimals="-3"
      id="Fact_6b0ab38a58e34e49ad4ebe6ee26bff78"
      unitRef="U001">234116000</us-gaap:AssetsNet>
    <us-gaap:AssetsNet
      contextRef="c20231031_ConsolidatedEntitiesAxis_VariableInterestEntityPrimaryBeneficiaryMember"
      decimals="-3"
      id="Fact_9cf7ddb24ff443bb9207a24f9a7f86c3"
      unitRef="U001">117082000</us-gaap:AssetsNet>
    <us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock
      contextRef="c20231101to20241031"
      id="Text_5a4c3e99d11f44149159467114e9bd9f">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 7 - ACCRUED LIABILITIES&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt; text-align: left; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Presented



















        below are the components of &lt;span style="font-style: italic;"&gt;Accrued liabilities&lt;/span&gt; at the balance sheet dates.&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Compensation related expenses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;31,188&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;37,218&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,200&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,080&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,375&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,965&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;Value added and other taxes &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,837&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;3,523&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Property, plant, and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,670&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,624&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating leases&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,925&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,912&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Telecommunications and utilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,040&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,311&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Service Contracts&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,448&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,613&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Other&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;9,439&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;7,332&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accrued liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;87,122&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;94,578&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock>
    <us-gaap:OtherCurrentLiabilitiesTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_c3e80fc248f3419eb6ed5061687dee30">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt; text-align: left; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Presented



















        below are the components of &lt;span style="font-style: italic;"&gt;Accrued liabilities&lt;/span&gt; at the balance sheet dates.&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Compensation related expenses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;31,188&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;37,218&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income taxes&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,200&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,080&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,375&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,965&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;Value added and other taxes &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,837&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;3,523&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Property, plant, and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,670&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,624&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating leases&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,925&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,912&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Telecommunications and utilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,040&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,311&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Service Contracts&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,448&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,613&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Other&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;9,439&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;7,332&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Accrued liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;87,122&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;94,578&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:OtherCurrentLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_fba43ae151514dd6900a6197164e427b"
      unitRef="U001">31188000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_e46bcecdac30418889da5149ebd557fa"
      unitRef="U001">37218000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_c18cda3066e84b63ab810a91bbd087dc"
      unitRef="U001">24200000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_78a403e0f9f04c75a6d0539f55328a87"
      unitRef="U001">24080000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_73e4148d388f49b0920c949f914d1f99"
      unitRef="U001">12375000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8b3b8a246d204021a8ce83a6e1d77e55"
      unitRef="U001">9965000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e56b635ea96b48e6983fb256bd0f77c4"
      unitRef="U001">2837000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_8af0a57ddf2d44fba7754c0f31b79357"
      unitRef="U001">3523000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <plab:AccruedPropertyPlantAndEquipmentCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_88684bbb47b9447c816330cee87fca5c"
      unitRef="U001">2670000</plab:AccruedPropertyPlantAndEquipmentCurrent>
    <plab:AccruedPropertyPlantAndEquipmentCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_5cc114783dc34dac97286a5521138035"
      unitRef="U001">6624000</plab:AccruedPropertyPlantAndEquipmentCurrent>
    <plab:AccruedOperatingLeasesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e524d232bca840368b83762794b770b1"
      unitRef="U001">1925000</plab:AccruedOperatingLeasesCurrent>
    <plab:AccruedOperatingLeasesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7b8c0c095da1483cb1a9d1bc3b53156d"
      unitRef="U001">1912000</plab:AccruedOperatingLeasesCurrent>
    <us-gaap:AccruedUtilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_235523f4ba6f4a07b0814589b9ac4d30"
      unitRef="U001">1040000</us-gaap:AccruedUtilitiesCurrent>
    <us-gaap:AccruedUtilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_37af953495bb4f2f838f9b60129bb340"
      unitRef="U001">1311000</us-gaap:AccruedUtilitiesCurrent>
    <plab:AccruedServicesContractedCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_67268c0d8a84414c8b2e41dbd11c5fc0"
      unitRef="U001">1448000</plab:AccruedServicesContractedCurrent>
    <plab:AccruedServicesContractedCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_edaff0e9f6b9467c8a383aad57b80241"
      unitRef="U001">2613000</plab:AccruedServicesContractedCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f7bd9aadba804c86b774f605c10387cc"
      unitRef="U001">9439000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f69661830371411c82e6bfb8a148e3a4"
      unitRef="U001">7332000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_8f3d1b49a4414d80995bbbb4994472e1"
      unitRef="U001">87122000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_2ead59b60d0642538a64fcd00fe03155"
      unitRef="U001">94578000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_efd3861613004368a5a650257faa579f">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;NOTE 8 - DEBT&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of October 31, 2024, the Current portion of long-term debt and the Long-term debt balances were comprised of finance leases as described below:&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
          &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-weight: bold;"&gt;As of October 31, 2024&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance&lt;/div&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Principal due:&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Next 12 months&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 13 &#x2013; 24&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 25 &#x2013; 36&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 37 &#x2013; 48&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 49 &#x2013; 60&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Long-term debt&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;25&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total debt&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate at balance sheet date&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basis spread on interest rates&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate reset&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Maturity date&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment amount&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;Varies as Lease matures&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment frequency&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom"&gt;&#160;Monthly&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Loan collateral (carrying amount)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;sup&gt;(1)&lt;/sup&gt; &lt;br/&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div&gt;
              &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="width: 18pt; vertical-align: top; text-align: right;"&gt;
                      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                      &lt;div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
            &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;"&gt;The table below provides information on the Company&#x2019;s long-term debt as of October 31, 2023.&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
        &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;As of October 31, 2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance &lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Principal due:&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Next 12 months&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 13 &#x2013; 24&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 25 &#x2013; 36&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 37 &#x2013; 48&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 49 &#x2013; 60&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;1&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Long-term debt&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,998&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total debt&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;24,619&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate at balance sheet date&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;N/A&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basis spread on interest rates&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate reset&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Maturity date&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;N/A&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment amount&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Varies as Lease matures&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment frequency&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom"&gt;Monthly&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Loan collateral (carrying amount)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;35,165&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;sup&gt;(1)&lt;/sup&gt; &lt;br/&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;sup&gt; &lt;/sup&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
        &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="width: 100%; font-family: 'Times New Roman'; font-size: 10pt;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="width: 27pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: top; width: 18pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Represents the carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
         &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: italic;"&gt;Finance Leases&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: 18pt;"&gt;In February 2021, the Company entered into a five-year $7.2 million finance lease for a high-end inspection tool. Monthly
          payments on the lease, which commenced in February 2021, are $0.1 million per month. Upon the payment of the fiftieth monthly payment
          and prior to payment of the fifty-first monthly payment, the Company may exercise an early buyout option to purchase the tool for $2.4
          million. After the original term or any renewal periods, the Company may return the tool, elect to extend the lease, or purchase the tool at its fair market value. Management has determined that the Company will exercise its early buyout option
          during the first half of 2025.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;In
            December 2020, the Company entered into &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;a five-year $35.5
              million&lt;/span&gt; finance lease for a high-end lithography tool. Monthly payments on the lease, which commenced in January 2021, increased from $0.04
            million during the first three months to $0.6 million for the following nine months, followed by forty-eight monthly payments of $&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;0.5&lt;/span&gt; million. As of the due date of the forty-eighth monthly payment, the Company may exercise an early buyout option to purchase the tool for $&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;14.1&lt;/span&gt; million.&#160; At the Company&#x2019;s option, after the original term, the Company may return the tool, elect to extend the lease term for a period and a lease payment
            to be agreed with lessor at the time, or purchase the tool for its then-fair market value, as determined by the lessor. The lease agreement incorporates the covenants included in the Company&#x2019;s Credit Agreement, as defined below (expired in
            September 2023), which are detailed below, and includes a cross-default provision for any agreement or instrument with an outstanding, committed balance greater than $&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;5.0&lt;/span&gt;
            million in which the Company is the indebted party. Management has determined that the Company will exercise its early buyout option during the first half of 2025. &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-indent: -9pt; margin-left: 9pt; font-variant: normal; text-transform: none;"&gt;Xiamen Project Loans&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;In November 2018, PDMCX obtained approval to borrow RMB 345.0 million from the Industrial and Commercial Bank of China. From November 2018 through July 2020, PDMCX entered into separate loan agreements (the &#x201c;Project Loans&#x201d;) for the
        entire approved amount. In February 2023, PDMCX repaid the entire outstanding balance of RMB 26.4 million ($3.9 million).&#160; As of October 31, 2024, PDMCX had no
        amount outstanding and the amounts may not be re-borrowed. The Project Loans were used to finance certain capital expenditures at the PDMCX facility and were collateralized by liens granted on the land use right, building, and certain equipment
        located at the facility. The interest rates on the Project Loans were variable (based on the RMB Loan Prime Rate of the National Interbank Funding Center), and interest incurred on the loans was eligible for reimbursement through incentives
        provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and duration. The Project Loans were subject to covenants and provisions, certain of which related to the assets
        pledged as security for the loans, all of which the Company were in compliance with at the time of repayment.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;
       &lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;span style="font-style: italic; font-weight: bold;"&gt;Xiamen Working Capital Loans&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt; &lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;In November 2018, PDMCX obtained approval for revolving, unsecured credit of RMB 200 million ($25 million), pursuant to which PDMCX may enter into
        separate loan agreements with varying terms to maturity. In December 2022, the Company repaid the Company&#x2019;s entire outstanding balance of RMB 25.6
        million ($3.6 million). The interest rates are variable, based on the RMB Loan Prime Rate of the National Interbank Funding Center.
        Interest incurred on the loans related to the amount borrowed was eligible for reimbursement through incentives provided by the Xiamen Torch Hi-Tech Industrial Development Zone, which provided for such reimbursements up to a prescribed limit and
        duration. This facility is subject to annual reviews and extensions. In August 2024, the Company was issued an extension to the revolving, unsecured credit agreement for RMB&#160;200 million (approximately $28.1 million) with an expiration date
        of July 31, 2025. As of October 31, 2024, PDMCX had no outstanding borrowings against the approval.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"&gt; Corporate Credit Agreement&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="margin: 0px 0px 0px 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; text-align: left; text-indent: -9pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;In September 2018, the
            Company entered into a &lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;five-year&lt;/span&gt;&lt;/span&gt; amended and restated credit agreement (the &#x201c;Credit Agreement&#x201d;), which had a $&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;50&lt;/span&gt;
            million borrowing limit, with an expansion capacity to $&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;100&lt;/span&gt; million. The Credit Agreement was secured by substantially all of the Company&#x2019;s assets located in the United
            States and common stock the Company owns in certain subsidiaries. The Credit Agreement was subject to covenants around minimum interest coverage ratio, total leverage ratio, and minimum unrestricted cash balance (all of which the Company were
            in compliance with at the termination of the agreement in September 2023), and limited the amount of cash dividends, distributions, and redemptions the Company could pay on the Company&#x2019;s common stock to an aggregate annual amount of $50 million. The Credit Agreement expired and was not renewed as of October 31, 2023. There were &lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;no&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; outstanding borrowings against the
            Credit Agreement at its expiration.&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt; &lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;
       &lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Interest Paid for Debt&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Interest payments were $0.3 million in 2024, $0.5 million in
        2023, and $2.8 million in 2022.&#160;&#160; The weighted-average interest rate on the Company&#x2019;s current portion of long-term debt for the periods
        ended October 31, 2024 and October 31, 2023 was 1.5% and 1.5%, respectively.&lt;/div&gt;
</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_82f4fc9107f04318827ba2b5599f213c">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of October 31, 2024, the Current portion of long-term debt and the Long-term debt balances were comprised of finance leases as described below:&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
          &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-weight: bold;"&gt;As of October 31, 2024&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance&lt;/div&gt;
                  &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Principal due:&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Next 12 months&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 13 &#x2013; 24&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 25 &#x2013; 36&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 37 &#x2013; 48&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 49 &#x2013; 60&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Long-term debt&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;25&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total debt&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate at balance sheet date&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basis spread on interest rates&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate reset&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Maturity date&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment amount&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;Varies as Lease matures&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%;" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment frequency&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom"&gt;&#160;Monthly&lt;br/&gt;
                &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Loan collateral (carrying amount)&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                  &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
                &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;sup&gt;(1)&lt;/sup&gt; &lt;br/&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div&gt;
              &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="width: 18pt; vertical-align: top; text-align: right;"&gt;
                      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
                    &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                      &lt;div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.&lt;/div&gt;
                    &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
            &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="margin: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;"&gt;The table below provides information on the Company&#x2019;s long-term debt as of October 31, 2023.&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
        &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;As of October 31, 2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance &lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Principal due:&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Next 12 months&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 13 &#x2013; 24&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 25 &#x2013; 36&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 37 &#x2013; 48&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Months 49 &#x2013; 60&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;1&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Long-term debt&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,998&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total debt&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;24,619&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate at balance sheet date&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;N/A&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basis spread on interest rates&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest rate reset&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;N/A&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Maturity date&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;N/A&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment amount&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Varies as Lease matures&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 85%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Periodic payment frequency&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: center; width: 9%;" valign="bottom"&gt;Monthly&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 2%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 85%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Loan collateral (carrying amount)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;35,165&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 2%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;sup&gt;(1)&lt;/sup&gt; &lt;br/&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;sup&gt; &lt;/sup&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
        &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="width: 100%; font-family: 'Times New Roman'; font-size: 10pt;"&gt;


  &lt;tr style="vertical-align: top;"&gt;

    &lt;td style="width: 27pt;"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: top; width: 18pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Represents the carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
         &lt;/div&gt;
</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_633953619cdf4aa2b66b95d2ec4f2b56"
      unitRef="U001">17972000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_25db93c1fb7244e1ba01d45f5efac09e"
      unitRef="U001">12000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_f0530ac0507945b09a44b3042c7a7002"
      unitRef="U001">12000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_b396815011194227826e7ea542be8406"
      unitRef="U001">1000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_416b6b1d6c694d3a93197570227d4164"
      unitRef="U001">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_a1c6672e64724b99b1d80d7700c89cee"
      unitRef="U001">25000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_9b86d06eeada4063a44f880fbfc26d97"
      unitRef="U001">17997000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtInstrumentPaymentTerms
      contextRef="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember"
      id="Fact_6fcdbf0670c048e8b12bd3769e0403fe">Varies as Lease matures</us-gaap:DebtInstrumentPaymentTerms>
    <us-gaap:DebtInstrumentFrequencyOfPeriodicPayment
      contextRef="c20231101to20241031_DebtInstrumentAxis_FinanceLeaseMember"
      id="Fact_08e036e3f7bc4f3fa67c0e88b5aff425">Monthly</us-gaap:DebtInstrumentFrequencyOfPeriodicPayment>
    <us-gaap:DebtInstrumentCollateralAmount
      contextRef="c20241031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2"
      unitRef="U001">32293000</us-gaap:DebtInstrumentCollateralAmount>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_1c907c04559d47968625908e97e707b9"
      unitRef="U001">6621000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_5859c85a4eb6441384f51b0d691c0ea0"
      unitRef="U001">17972000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_7e7208eaa41d453ca974ab30b33686b1"
      unitRef="U001">12000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_41932576c54e482ab815bd1f22933855"
      unitRef="U001">13000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_de8e36a47279467c9262fee784ed1e7c"
      unitRef="U001">1000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_33adbcf8639e403d83a6344dc567690c"
      unitRef="U001">17998000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_4ad375f7d50c42cfba8dcfe652ac322c"
      unitRef="U001">24619000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtInstrumentPaymentTerms
      contextRef="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember"
      id="Fact_89595bb69f0244acbf3147e0a08945b8">Varies as Lease matures</us-gaap:DebtInstrumentPaymentTerms>
    <us-gaap:DebtInstrumentFrequencyOfPeriodicPayment
      contextRef="c20221101to20231031_DebtInstrumentAxis_FinanceLeaseMember"
      id="Fact_4f4489da109e4e6d879a623e6c1f27d0">Monthly</us-gaap:DebtInstrumentFrequencyOfPeriodicPayment>
    <us-gaap:DebtInstrumentCollateralAmount
      contextRef="c20231031_DebtInstrumentAxis_FinanceLeaseMember"
      decimals="-3"
      id="Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b"
      unitRef="U001">35165000</us-gaap:DebtInstrumentCollateralAmount>
    <us-gaap:LesseeFinanceLeaseTermOfContract1
      contextRef="c20241031_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember"
      id="Fact_352cb268b2124e6fb3c6e56be2b613a1">P5Y</us-gaap:LesseeFinanceLeaseTermOfContract1>
    <us-gaap:FinanceLeaseLiability
      contextRef="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember"
      decimals="-5"
      id="Fact_da18bf945f8341b29d5f8fa6677c0a79"
      unitRef="U001">7200000</us-gaap:FinanceLeaseLiability>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="c20210201to20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember_LeaseContractualTermAxis_MonthlyMember"
      decimals="-5"
      id="Fact_11eb1e6fd4bd476f80fb7960cbcb67bc"
      unitRef="U001">100000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="c20210228_DebtInstrumentAxis_Seven2MillionFinanceLeaseMember"
      decimals="-5"
      id="Fact_a6ca36f0868e4e7aba4db610e154b7e6"
      unitRef="U001">2400000</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <us-gaap:LesseeFinanceLeaseTermOfContract1
      contextRef="c20241031_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"
      id="Fact_325d4caf9ef9442eaa4514607a548b1d">P5Y</us-gaap:LesseeFinanceLeaseTermOfContract1>
    <us-gaap:FinanceLeaseLiability
      contextRef="c20201231_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"
      decimals="-5"
      id="Fact_906d1e1565c74537be96711f52a2114a"
      unitRef="U001">35500000</us-gaap:FinanceLeaseLiability>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FirstThreeMonthsMember"
      decimals="-4"
      id="Fact_a4d23bb1496647268efd9f84ea7a7cb9"
      unitRef="U001">40000.00</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowingNineMonthsMember"
      decimals="-5"
      id="Fact_b0801fc1d36c420a9700f396f2570191"
      unitRef="U001">600000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="c20210101to20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_LeaseContractualTermAxis_FollowedByThirtySixMonthsMember"
      decimals="-5"
      id="Fact_43fc8537884c42a3a2f516730c9521c6"
      unitRef="U001">500000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember"
      decimals="-5"
      id="Fact_f4126606fafa42dd9f159c14f2b18978"
      unitRef="U001">14100000</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <plab:OutstandingCommittedBalanceForCrossDefaultProvision
      contextRef="c20210131_DebtInstrumentAxis_Three55MillionFinanceLeaseMember_RangeAxis_MinimumMember"
      decimals="-5"
      id="Fact_edce3aa85efa4a4ba74a7dd780d53080"
      unitRef="U001">5000000</plab:OutstandingCommittedBalanceForCrossDefaultProvision>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20181130_DebtInstrumentAxis_ProjectLoanMember"
      decimals="-5"
      id="Fact_c1238c51c4be468ea310b9756494095b"
      unitRef="U006">345000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember"
      decimals="-5"
      id="Fact_cdcf4c62dd4247bc8daeec607ed2a76d"
      unitRef="U006">26400000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="c20230201to20230228_DebtInstrumentAxis_ProjectLoanMember"
      decimals="-5"
      id="Fact_f88a5ebb899a4574bbb38f841ce041a2"
      unitRef="U001">3900000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="c20241031_DebtInstrumentAxis_ProjectLoanMember"
      decimals="-6"
      id="Fact_2496b9dc24ba424a92e7c4ffd2ac3cfe"
      unitRef="U001">0</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-6"
      id="Fact_10839b0503054f1589df76955961ab68"
      unitRef="U006">200000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20181130_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-6"
      id="Fact_165a1e7719d144fe9ce3aa360495c209"
      unitRef="U001">25000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-5"
      id="Fact_3a59bde681e94d38931a878ed3c8feec"
      unitRef="U006">25600000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="c20221201to20221231_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-5"
      id="Fact_0a9fa7b25a3e45bc85a0aff955e8cfcd"
      unitRef="U001">3600000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-6"
      id="Fact_4f7790657927425097f3c3e34a163c20"
      unitRef="U006">200000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-5"
      id="Fact_b0abb0b8a2f745b2b10a46dbb56835fe"
      unitRef="U001">28100000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityExpirationDate1
      contextRef="c20231101to20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"
      id="Fact_c5536950f65749af8b8474cf4a20ec52">2025-07-31</us-gaap:LineOfCreditFacilityExpirationDate1>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="c20241031_DebtInstrumentAxis_WorkingCapitalLoanMember"
      decimals="-6"
      id="Fact_677cb902d27d4b788df884c62e4c3b98"
      unitRef="U001">0</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtInstrumentTerm
      contextRef="c20231101to20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"
      id="Fact_f166807bec5740ba9b2e3a797f1192e5">P5Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity
      contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"
      decimals="-6"
      id="Fact_510a99d123aa40ceb40299e006a27ba9"
      unitRef="U001">50000000</us-gaap:LineOfCreditFacilityCurrentBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"
      decimals="-6"
      id="Fact_15f4047853684d0dae091e436ac388e9"
      unitRef="U001">100000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries
      contextRef="c20180930_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"
      decimals="-6"
      id="Fact_2002921653ce47f99753ee9c1ddf8e9c"
      unitRef="U001">50000000</us-gaap:AmountOfRestrictedNetAssetsForConsolidatedAndUnconsolidatedSubsidiaries>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="c20241031_DebtInstrumentAxis_AmendedAndRestatedCreditAgreementMember"
      decimals="-6"
      id="Fact_97aa038413ba4e41ab8e06ca9bfd4121"
      unitRef="U001">0</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:InterestPaid
      contextRef="c20231101to20241031"
      decimals="-5"
      id="Fact_05222819fb884b31a925bbc559d6c9c9"
      unitRef="U001">300000</us-gaap:InterestPaid>
    <us-gaap:InterestPaid
      contextRef="c20221101to20231031"
      decimals="-5"
      id="Fact_9c0281ca874d475e892e5e7b95bcba83"
      unitRef="U001">500000</us-gaap:InterestPaid>
    <us-gaap:InterestPaid
      contextRef="c20211101to20221031"
      decimals="-5"
      id="Fact_cc1b00ba5e384ed0a13080fa88ae0621"
      unitRef="U001">2800000</us-gaap:InterestPaid>
    <us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime
      contextRef="c20231101to20241031"
      decimals="3"
      id="Fact_75fd438f69134b599a993673c7909154"
      unitRef="U005">0.015</us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime>
    <us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime
      contextRef="c20221101to20231031"
      decimals="3"
      id="Fact_bb8b1a096c7f4fef8dfc07e523cb4826"
      unitRef="U005">0.015</us-gaap:ShortTermDebtWeightedAverageInterestRateOverTime>
    <us-gaap:OtherLiabilitiesDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_ab87d8a9ba7d4916979afccd45399a16">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 9 - OTHER LIABILITIES&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Other liabilities&lt;/span&gt; at
        the balance sheet dates.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
        &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Unrecognized tax benefit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;14,720&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,908&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Post employment benefit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,993&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,994&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Contract liabilities&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,910&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,454&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tax payable&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,310&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,622&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Operating lease&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,037&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,218&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,494&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,195&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other liabilities&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47,464&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47,391&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;
</us-gaap:OtherLiabilitiesDisclosureTextBlock>
    <us-gaap:OtherLiabilitiesTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_685a77083d2f4663b7a7637c6c186a7d">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the components of &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Other liabilities&lt;/span&gt; at
        the balance sheet dates.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
        &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
                &lt;div style="text-align: center; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Unrecognized tax benefit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;14,720&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,908&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Post employment benefit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,993&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,994&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Contract liabilities&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,910&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,454&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tax payable&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,310&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,622&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Operating lease&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,037&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,218&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,494&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,195&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other liabilities&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47,464&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47,391&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;
</us-gaap:OtherLiabilitiesTableTextBlock>
    <plab:UnrecognizedTaxBenefitNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_7a9b64b4118c409d8f7c9fc6767c358e"
      unitRef="U001">14720000</plab:UnrecognizedTaxBenefitNoncurrent>
    <plab:UnrecognizedTaxBenefitNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_bcf6eb8c7e4d4dcab32fb434b7355af2"
      unitRef="U001">8908000</plab:UnrecognizedTaxBenefitNoncurrent>
    <us-gaap:PostemploymentBenefitsLiabilityNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_8f22458aa23a48c9bd87ee6bc9b8354e"
      unitRef="U001">12993000</us-gaap:PostemploymentBenefitsLiabilityNoncurrent>
    <us-gaap:PostemploymentBenefitsLiabilityNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_d8ea2c6901144d1d8b252ece0875ec42"
      unitRef="U001">11994000</us-gaap:PostemploymentBenefitsLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2f95fd6bd1884aefaa26795067ea1258"
      unitRef="U001">8910000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_17636a5435c0494fad0b841f94db689d"
      unitRef="U001">12454000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_744e2e364dc44a6b96ee34bed8c14838"
      unitRef="U001">4310000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_a3d50a2eba644ce68ae4d6e54f0832c4"
      unitRef="U001">6622000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_6b980d2252294003bdc44d6ea2ccbbd6"
      unitRef="U001">3037000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_66489a0289f14c8fba5af2a714eb4c6f"
      unitRef="U001">4218000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherSundryLiabilitiesNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_1024ca2d33aa48c48776c7959408d060"
      unitRef="U001">3494000</us-gaap:OtherSundryLiabilitiesNoncurrent>
    <us-gaap:OtherSundryLiabilitiesNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_113c8e8cad854b65a18ac4d84db40650"
      unitRef="U001">3195000</us-gaap:OtherSundryLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a7690e62297643ec9cda7841288fe1d2"
      unitRef="U001">47464000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_f40fb44b1a9f463c9eb2f49784db6593"
      unitRef="U001">47391000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="c20231101to20241031"
      id="Text_093467c54ffa428597bd11bb3e1794ee">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 10 - REVENUE&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables present the Company&#x2019;s revenue for the years ended October 31, 2024, October 31, 2023, and October 31, 2022,
      disaggregated by product type, geographic origin, and timing of recognition.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Product Type&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: bottom; white-space: nowrap; text-align: center;"&gt;
            &lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;IC&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;High-end&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;228,469&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;194,939&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;195,332&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Mainstream&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;409,682&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;456,340&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;397,694&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total IC&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;638,151&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;651,279&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;593,026&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;FPD&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;High-end&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;195,365&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;200,842&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;186,988&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Mainstream&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;33,430&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39,955&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;44,535&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total FPD&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;228,795&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;240,797&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;231,523&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;Year Ended&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Geographic Origin*&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;October 31, &lt;/div&gt;
            &lt;div&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;October 31, &lt;/div&gt;
            &lt;div&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: center; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Taiwan&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;288,275&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;316,889&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;291,342&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom"&gt;China&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;232,941&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;245,378&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;212,598&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Korea&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;158,017&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;162,235&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;156,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;146,652&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;128,879&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;126,205&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Europe&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39,244&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;36,579&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;36,402&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,817&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;1,863&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 30px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;* This table disaggregates revenue by the location in which it was earned.&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;Year Ended &#160;&#160; &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Timing of Recognition&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Over time&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;831,500&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;838,628&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;758,359&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;At a point in time&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,446&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;53,448&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;66,190&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: bold; font-style: italic; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;Contract Assets and Contract Liabilities&lt;/span&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt; &lt;span style="font-family: 'Times New Roman';"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The




            following table provides information about the Company&#x2019;s contract balances at the balance sheet dates.&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt;&lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
              &lt;div style="font-weight: bold; font-family: 'Times New Roman';"&gt;Classification&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;br/&gt;
                2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;&#160;&lt;span style="text-decoration: underline;"&gt;Contract Assets&lt;/span&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Other current assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;11,532&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;10,984&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;&#160;&lt;span style="text-decoration: underline;"&gt;Contract Liabilities&lt;/span&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Accrued liabilities&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,375&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;9,965&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Other liabilities&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;8,910&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,454&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;21,285&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;22,419&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The following table presents revenue recognized
          from contract liabilities that existed at the beginning of the reporting periods. &lt;/span&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt; &lt;/div&gt;

&lt;div&gt; &lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2022&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Revenue recognized from beginning liability&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,222&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;13,966&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;8,934&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-weight: normal; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;"&gt;The Company&#x2019;s invoice terms generally
        range from net &lt;span style="-sec-ix-hidden:Fact_599542974f764e109fc11a4ac9750c4f"&gt;thirty&lt;/span&gt; to ninety days,
        depending on both the geographic market in which the transaction occurs and the Company&#x2019;s payment agreements with specific customers. In the event that the Company&#x2019;s evaluation of a customer&#x2019;s business prospects and financial condition indicate
        that the customer presents a collectability risk, the Company will modify terms of sale, which may require payment in advance of performance. At the time of adoption, the Company elected the practical expedient allowed under ASC Topic 606 &#x201c;Revenue
        from Contracts with Customers&#x201d; (&#x201c;Topic 606&#x201d;) that permits the Company not to adjust a contract&#x2019;s promised amount of consideration to reflect a financing component when the period between when the Company transfers control of goods or services to
        customers and when the Company is paid is one year or less.&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;In
          instances when the Company is paid in advance of the Company&#x2019;s performance, the Company records a contract liability and, as allowed under the practical expedient in Topic 606, recognize interest expense only if the period between when the
          Company receives payment from the customer and the date when the Company expects to be entitled to the payment is greater than one year. Historically, advance payments the Company has received from customers have generally not preceded the
          completion of the Company&#x2019;s performance obligations by more than one year. &lt;/span&gt; &lt;/div&gt;
</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_f1e2c7f47dae4fd3a03559248f62ccc3">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables present the Company&#x2019;s revenue for the years ended October 31, 2024, October 31, 2023, and October 31, 2022,
      disaggregated by product type, geographic origin, and timing of recognition.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Product Type&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: top; white-space: nowrap;"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="border-bottom: 2px solid #000000; vertical-align: bottom; white-space: nowrap; text-align: center;"&gt;
            &lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;IC&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;High-end&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;228,469&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;194,939&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;195,332&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Mainstream&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;409,682&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;456,340&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;397,694&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total IC&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;638,151&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;651,279&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;593,026&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;FPD&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;High-end&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;195,365&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;200,842&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;186,988&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Mainstream&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;33,430&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39,955&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;44,535&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total FPD&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;228,795&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;240,797&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;231,523&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;Year Ended&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Geographic Origin*&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;October 31, &lt;/div&gt;
            &lt;div&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;October 31, &lt;/div&gt;
            &lt;div&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: center; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Taiwan&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;288,275&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;316,889&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;291,342&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom"&gt;China&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;232,941&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;245,378&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;212,598&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Korea&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;158,017&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;162,235&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;156,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;146,652&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;128,879&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;126,205&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Europe&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39,244&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;36,579&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;36,402&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,817&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;1,863&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 30px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;* This table disaggregates revenue by the location in which it was earned.&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="margin: 0px auto 0px 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;Year Ended &#160;&#160; &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
            &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue by Timing of Recognition&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;October 31, &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: bottom; font-weight: bold; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31, &lt;/span&gt;&lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2022&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Over time&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;831,500&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;838,628&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;758,359&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;At a point in time&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,446&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;53,448&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;66,190&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;866,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;892,076&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;824,549&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;&#160;&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_20e665fe9d8946d9b432d953a585bfc2"
      unitRef="U001">228469000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_5c1488386ede492a9dd1f1173882923f"
      unitRef="U001">194939000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_HighEndIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_78d6797455354295840e13ae47a7ade5"
      unitRef="U001">195332000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_d85c151d1b4b42a88d5bed483ce225c0"
      unitRef="U001">409682000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_2f416b5621844d61a99430d6396d7a40"
      unitRef="U001">456340000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_MainstreamIntegratedCircuitsMember"
      decimals="-3"
      id="Fact_ee67714eb81d43b08b62ad285f21519c"
      unitRef="U001">397694000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_IntegratedCircuitsMember"
      decimals="-3"
      id="Fact_aba51784a7784ea08e0b4b476e15c603"
      unitRef="U001">638151000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_IntegratedCircuitsMember"
      decimals="-3"
      id="Fact_b3ef5dcb3f8649cbb2fbbd7495a3e804"
      unitRef="U001">651279000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_IntegratedCircuitsMember"
      decimals="-3"
      id="Fact_ec9957a345cb415faf8963716817a700"
      unitRef="U001">593026000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_771f2aad288f4b7a90a29b5a24d66fb4"
      unitRef="U001">195365000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_89b4217a6b7840ce8da029f7d83065f4"
      unitRef="U001">200842000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_HighEndFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_bc3565301895418caa303da7227cdf5a"
      unitRef="U001">186988000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_bf9dc8699c3d4d8a8a1e67fc742c764a"
      unitRef="U001">33430000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_b579ae247f274fefa58eb17d63d9b735"
      unitRef="U001">39955000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_MainstreamFlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_00bed47dbb2f4cefb8f8f8ac456f24ce"
      unitRef="U001">44535000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_ProductOrServiceAxis_FlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_9ee263a6f4d448688b887a9cb4117570"
      unitRef="U001">228795000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_ProductOrServiceAxis_FlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_99392fceafeb417aad2df9155c33ba91"
      unitRef="U001">240797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_ProductOrServiceAxis_FlatPanelDisplaysMember"
      decimals="-3"
      id="Fact_79b5169abf154bd98af008eaf63656cb"
      unitRef="U001">231523000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_bea1b19be2f44c1ca7e9d99054ee16bc"
      unitRef="U001">866946000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_fb3423b6c1e94f58b8591bdc02b99fb1"
      unitRef="U001">892076000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_fa42cf12e4284ecb88ba9818bd3c7aae"
      unitRef="U001">824549000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_e6627c80a6894038a54be755a3225811"
      unitRef="U001">288275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_0ddc9fddd34c4b8ebc3661af60847db3"
      unitRef="U001">316889000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_266e1d5ef9fc49278da67365acd002f2"
      unitRef="U001">291342000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_22bc556d532d4520a3ba57e860fd19ce"
      unitRef="U001">232941000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_a6b804d848484f39b7f861b29939edbd"
      unitRef="U001">245378000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_3de40eda83a949d398b85b4d8623bb00"
      unitRef="U001">212598000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_4089a58279474338b8171e084881ec71"
      unitRef="U001">158017000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_4dce7369a28845e68c321739a577a851"
      unitRef="U001">162235000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_088349b967de4f81b8ef3a709a736cb1"
      unitRef="U001">156139000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_2f1a9c57ed5f43259e33217e21455068"
      unitRef="U001">146652000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_bab3969385964f59bb9d465daaa52cd7"
      unitRef="U001">128879000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_6542a345986a4ee3b10e2ebc866aff08"
      unitRef="U001">126205000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_EuropeMember"
      decimals="-3"
      id="Fact_8edef475eca146fea656f3ac6ecb40b6"
      unitRef="U001">39244000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_EuropeMember"
      decimals="-3"
      id="Fact_63df0cc6efd5410e80c9e935cb3bde36"
      unitRef="U001">36579000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_EuropeMember"
      decimals="-3"
      id="Fact_dba0aa5ba3d549caa6fe0049b46c9618"
      unitRef="U001">36402000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_StatementGeographicalAxis_OtherMember"
      decimals="-3"
      id="Fact_1b42ed89ce72467e9f24f757bec11a5d"
      unitRef="U001">1817000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_StatementGeographicalAxis_OtherMember"
      decimals="-3"
      id="Fact_35854d804b334b9c9b3eb0b6e0ac2c89"
      unitRef="U001">2116000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_StatementGeographicalAxis_OtherMember"
      decimals="-3"
      id="Fact_8ff2838ee6dc4512aa06ec699c769476"
      unitRef="U001">1863000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a39ab698dda246128a7fea52caae3412"
      unitRef="U001">866946000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_338e3ab939bd45cb990cb793b7134ab0"
      unitRef="U001">892076000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_0f49dbc742bf4724b0c04563d285b898"
      unitRef="U001">824549000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"
      decimals="-3"
      id="Fact_f58ca76fba8c4a6db191a674d80b8e62"
      unitRef="U001">831500000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"
      decimals="-3"
      id="Fact_f6f8877529ac48a1955c1fa6af356d42"
      unitRef="U001">838628000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredOverTimeMember"
      decimals="-3"
      id="Fact_08dfb1c1e598426288e9dd951b1e7855"
      unitRef="U001">758359000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"
      decimals="-3"
      id="Fact_f1987de8b0ce4c9ea3fa01b24ef3a508"
      unitRef="U001">35446000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"
      decimals="-3"
      id="Fact_3b5a60b2ae6d4f9b8ed10ee6f7164e72"
      unitRef="U001">53448000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_TimingOfTransferOfGoodOrServiceAxis_TransferredAtPointInTimeMember"
      decimals="-3"
      id="Fact_3c3ecb609c0e44f1baf69b350e6e2ac0"
      unitRef="U001">66190000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1de96e24c8e548129d0bea907f91e857"
      unitRef="U001">866946000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_2ebb79b7c9a34aef9057468ad827e04b"
      unitRef="U001">892076000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2ff6d3d766db4b18a31edf00da62273e"
      unitRef="U001">824549000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_afb38a16ec304d0093396bea3fba49c7">
&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt; &lt;span style="font-family: 'Times New Roman';"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The




            following table provides information about the Company&#x2019;s contract balances at the balance sheet dates.&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt;&lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: left; white-space: nowrap;"&gt;
              &lt;div style="font-weight: bold; font-family: 'Times New Roman';"&gt;Classification&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;br/&gt;
                2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;&#160;&lt;span style="text-decoration: underline;"&gt;Contract Assets&lt;/span&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Other current assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;11,532&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;10,984&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;&#160;&lt;span style="text-decoration: underline;"&gt;Contract Liabilities&lt;/span&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Accrued liabilities&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,375&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;9,965&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-style: italic; font-family: 'Times New Roman';"&gt;&#160;Other liabilities&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;8,910&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,454&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;21,285&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;22,419&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The following table presents revenue recognized
          from contract liabilities that existed at the beginning of the reporting periods. &lt;/span&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#160;&lt;/span&gt; &lt;/div&gt;

&lt;div&gt; &lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;October 31, &lt;/div&gt;
              &lt;div style="text-align: center; font-weight: bold; font-family: 'Times New Roman';"&gt;2022&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;Revenue recognized from beginning liability&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;12,222&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;13,966&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman';"&gt;8,934&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="c20241031_BalanceSheetLocationAxis_OtherCurrentAssetsMember"
      decimals="-3"
      id="Fact_98174d3fcea444e1a2180c460dc94fee"
      unitRef="U001">11532000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="c20231031_BalanceSheetLocationAxis_OtherCurrentAssetsMember"
      decimals="-3"
      id="Fact_786e13c5cfef4d158a4687045e129432"
      unitRef="U001">10984000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20241031_BalanceSheetLocationAxis_AccruedLiabilitiesMember"
      decimals="-3"
      id="Fact_3609457e6d244f07907489057dcc04bf"
      unitRef="U001">12375000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20231031_BalanceSheetLocationAxis_AccruedLiabilitiesMember"
      decimals="-3"
      id="Fact_f50612157b59448f93de8b871c671437"
      unitRef="U001">9965000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20241031_BalanceSheetLocationAxis_OtherLiabilitiesMember"
      decimals="-3"
      id="Fact_532cb43b0a1941aea3d76c5639504a35"
      unitRef="U001">8910000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20231031_BalanceSheetLocationAxis_OtherLiabilitiesMember"
      decimals="-3"
      id="Fact_c8b4e84d8f8543d48a8ebbd89457169b"
      unitRef="U001">12454000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_60f0af7a23164491b1100e793d9742c6"
      unitRef="U001">21285000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20231031"
      decimals="-3"
      id="Fact_72a302e8f47b4e71b2f79b6d3f6f9df4"
      unitRef="U001">22419000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_c3de497a5abe4ca6ad761737b8b5176a"
      unitRef="U001">12222000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_a97a8ace57fa42fca383635cd77bfccc"
      unitRef="U001">13966000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_fe6425f9d8894832a18bb8263da8bd24"
      unitRef="U001">8934000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_eacb5d7959bb48ec8067a18d863c121d">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: #FFFFFF; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;"&gt;The Company&#x2019;s invoice terms generally
        range from net &lt;span style="-sec-ix-hidden:Fact_599542974f764e109fc11a4ac9750c4f"&gt;thirty&lt;/span&gt; to ninety days,
        depending on both the geographic market in which the transaction occurs and the Company&#x2019;s payment agreements with specific customers. In the event that the Company&#x2019;s evaluation of a customer&#x2019;s business prospects and financial condition indicate
        that the customer presents a collectability risk, the Company will modify terms of sale, which may require payment in advance of performance. At the time of adoption, the Company elected the practical expedient allowed under ASC Topic 606 &#x201c;Revenue
        from Contracts with Customers&#x201d; (&#x201c;Topic 606&#x201d;) that permits the Company not to adjust a contract&#x2019;s promised amount of consideration to reflect a financing component when the period between when the Company transfers control of goods or services to
        customers and when the Company is paid is one year or less.&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
        &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;In
          instances when the Company is paid in advance of the Company&#x2019;s performance, the Company records a contract liability and, as allowed under the practical expedient in Topic 606, recognize interest expense only if the period between when the
          Company receives payment from the customer and the date when the Company expects to be entitled to the payment is greater than one year. Historically, advance payments the Company has received from customers have generally not preceded the
          completion of the Company&#x2019;s performance obligations by more than one year. &lt;/span&gt; &lt;/div&gt;
</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <plab:ProductInvoiceTerm
      contextRef="c20231101to20241031_RangeAxis_MaximumMember"
      id="Fact_95bcc348402048dea8de92e9ab8e1949">P90D</plab:ProductInvoiceTerm>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="c20231101to20241031"
      id="Text_82ba5d9342fd4d4da0fc9c7f10ca440c">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-weight: bold;"&gt;NOTE 11 - LEASES&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The following table provides information on operating and finance leases included in the Company&#x2019;s consolidated balance sheets.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;ROU Assets &#x2013; Operating Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_e8e8c545bc864b06b0577fcd644ac09b"&gt;&lt;span style="-sec-ix-hidden:Fact_b4cb7129b71940b6b50393ee53e87598"&gt;Other assets&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,010&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,189&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;ROU Assets &#x2013; Finance Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_8706baf0b4a0466d9ef2b89f59b7270e"&gt;&lt;span style="-sec-ix-hidden:Fact_765cd50c756e45d59be9c0bd312deb00"&gt;Property, plant and equipment, net&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,165&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;Lease Liabilities &#x2013; Operating Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_bac605cca03d4db9b005c1c5e38ebb4e"&gt;&lt;span style="-sec-ix-hidden:Fact_4662dc911fd242c59f78644e7c671198"&gt;Accrued liabilities&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,925&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,912&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_f2e4447e1ddf477e8d84073b9710c2d9"&gt;&lt;span style="-sec-ix-hidden:Fact_a0cf7b23a5be4102aba701801191947a"&gt;Other liabilities&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,037&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,218&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,962&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,130&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;Lease Liabilities &#x2013; Finance Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_bcdd19554cb14a1b8addbc63acc37d1c"&gt;&lt;span style="-sec-ix-hidden:Fact_02bcc5c17bc34ac88d993f4748f0176e"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_fc386990839946f5980f8174f7d08fe1"&gt;&lt;span style="-sec-ix-hidden:Fact_b0c8a6aa29b74344a7a394c915c7fd4d"&gt;Long-term debt&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;25&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,998&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,619&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
      following table presents future lease payments under noncancelable operating and finance leases as of October 31, 2024. Imputed interest represents the difference between undiscounted cash flows and discounted cash flows.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fiscal Year&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Operating &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,039&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,027&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,651&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2027&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,228&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2028&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;267&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2029 and thereafter&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total lease payments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,191&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,054&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Imputed interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(229&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(57&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lease liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,962&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;The following table presents lease costs for 2024, 2023, and 2022.&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,255&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,278&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,253&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Short-term lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,273&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;462&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;469&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Variable lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;595&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;656&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;603&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest on finance lease&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;330&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;426&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;522&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Amortization of ROU assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,950&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,870&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,917&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
      following table presents statistical information related to the Company&#x2019;s operating and finance leases. The information presented is as of the balance sheet dates.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 51%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 51%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; remaining&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;lease term (in&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; years)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;br/&gt;
            &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; average discount&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;rate&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;remaining &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;lease term (in&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;years)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; discount rate&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 51%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: middle; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.8&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3.2&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3.7&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.4&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 51%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: middle; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;0.2&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.5&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.2&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.5&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The following table presents the effects of leases on the Company&#x2019;s 2024, 2023, and 2022 consolidated statements of cash flows, and provides leases-related non-cash information for those years.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; padding-bottom: 2px; white-space: nowrap;"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash flows used for operating leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,241&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,271&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,259&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash flows used for finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;330&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;429&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;566&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Financing cash flows used for finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,521&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;7,289&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;ROU assets obtained in exchange for operating lease obligations&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;842&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;513&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <plab:InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_2abfec70b1774ce297317b262f238944">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The following table provides information on operating and finance leases included in the Company&#x2019;s consolidated balance sheets.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;ROU Assets &#x2013; Operating Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_e8e8c545bc864b06b0577fcd644ac09b"&gt;&lt;span style="-sec-ix-hidden:Fact_b4cb7129b71940b6b50393ee53e87598"&gt;Other assets&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,010&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,189&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;ROU Assets &#x2013; Finance Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_8706baf0b4a0466d9ef2b89f59b7270e"&gt;&lt;span style="-sec-ix-hidden:Fact_765cd50c756e45d59be9c0bd312deb00"&gt;Property, plant and equipment, net&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;32,293&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;35,165&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;Lease Liabilities &#x2013; Operating Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_bac605cca03d4db9b005c1c5e38ebb4e"&gt;&lt;span style="-sec-ix-hidden:Fact_4662dc911fd242c59f78644e7c671198"&gt;Accrued liabilities&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,925&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,912&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_f2e4447e1ddf477e8d84073b9710c2d9"&gt;&lt;span style="-sec-ix-hidden:Fact_a0cf7b23a5be4102aba701801191947a"&gt;Other liabilities&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,037&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,218&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,962&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,130&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;Lease Liabilities &#x2013; Finance Leases&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_bcdd19554cb14a1b8addbc63acc37d1c"&gt;&lt;span style="-sec-ix-hidden:Fact_02bcc5c17bc34ac88d993f4748f0176e"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,972&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&lt;span style="-sec-ix-hidden:Fact_fc386990839946f5980f8174f7d08fe1"&gt;&lt;span style="-sec-ix-hidden:Fact_b0c8a6aa29b74344a7a394c915c7fd4d"&gt;Long-term debt&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;25&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,998&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;24,619&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:InformationOnOperatingAndFinanceLeasesIncludedInConsolidatedBalanceSheetsTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20241031"
      decimals="-3"
      id="Fact_fa5108a21c4945f694aa043f748ec327"
      unitRef="U001">5010000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20231031"
      decimals="-3"
      id="Fact_c57a0d31852348838b02426375fa9786"
      unitRef="U001">6189000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="c20241031"
      decimals="-3"
      id="Fact_96048084db05426c9a936c0d721b0db5"
      unitRef="U001">32293000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="c20231031"
      decimals="-3"
      id="Fact_bdc3a6c548994c3fab0ae569f170ead0"
      unitRef="U001">35165000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_4825c009d098427f894f40d811d555d1"
      unitRef="U001">1925000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_0181657b535a4f4da8559ab759d8b561"
      unitRef="U001">1912000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_988c96aa3f6f4397a188d54e74f8834f"
      unitRef="U001">3037000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_833fa53b35b54b45ab60dbcb86f9dad9"
      unitRef="U001">4218000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_7ad7b7c56c8940a8808aecfa18c01502"
      unitRef="U001">4962000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7ab0d2edcd9e416fafa39a35f423baaf"
      unitRef="U001">6130000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_dda76151087c46f39702df37a5a91f8d"
      unitRef="U001">17972000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_bda526ca89684adeb2ac1ae1dad466e8"
      unitRef="U001">6621000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a4722106137f419c9d592b3cce85ebed"
      unitRef="U001">25000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="c20231031"
      decimals="-3"
      id="Fact_5cafc02af77843d2b3449c3f882a6f56"
      unitRef="U001">17998000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_d132cd504c0540f6b03dbe1d27e813f3"
      unitRef="U001">17997000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="c20231031"
      decimals="-3"
      id="Fact_92b4ae1fc1cc44efa9882037531d6b2c"
      unitRef="U001">24619000</us-gaap:FinanceLeaseLiability>
    <plab:FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_85d5a12f2c424f469a637b83cf73997b">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
      following table presents future lease payments under noncancelable operating and finance leases as of October 31, 2024. Imputed interest represents the difference between undiscounted cash flows and discounted cash flows.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fiscal Year&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Operating &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Finance &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,039&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,027&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,651&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2027&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,228&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2028&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;267&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2029 and thereafter&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total lease payments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,191&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,054&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Imputed interest&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(229&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(57&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lease liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,962&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,997&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:FutureLeasePaymentsUnderNoncancelableOperatingAndFinanceLeasesTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b10fddbacbcd419cb474790da04876d4"
      unitRef="U001">2039000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="c20241031"
      decimals="-3"
      id="Fact_afa8b76824864e4fa2ead1c240fbcd1d"
      unitRef="U001">18027000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="c20241031"
      decimals="-3"
      id="Fact_4df1d7c4b0eb4d10b994880b0b743898"
      unitRef="U001">1651000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="c20241031"
      decimals="-3"
      id="Fact_434d5a36903348a4a9edc829706d382b"
      unitRef="U001">13000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e0e0c8aaeda8423dbf7f3f10d62f50d4"
      unitRef="U001">1228000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="c20241031"
      decimals="-3"
      id="Fact_23cb89c1aaa1453b824e3b8e7b6973c1"
      unitRef="U001">13000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a01f6216969e4fd9866d25041e1aeb65"
      unitRef="U001">267000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="c20241031"
      decimals="-3"
      id="Fact_c45a3d16949540b2829e051bf552f0d7"
      unitRef="U001">1000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <plab:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour
      contextRef="c20241031"
      decimals="-3"
      id="Fact_e73a2785ea6544df8ccc6ee35fe8d700"
      unitRef="U001">6000</plab:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour>
    <plab:FinanceLeaseLiabilityPaymentsDueAfterYearFour
      contextRef="c20241031"
      decimals="-3"
      id="Fact_c80a74b9b8bb4f1bb45d11711663f4a3"
      unitRef="U001">0</plab:FinanceLeaseLiabilityPaymentsDueAfterYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_46e4c20ca5f04798b6056a06be94a6ea"
      unitRef="U001">5191000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="c20241031"
      decimals="-3"
      id="Fact_4bde850bf2ed4ce99d4a5af5aba8831d"
      unitRef="U001">18054000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="c20241031"
      decimals="-3"
      id="Fact_adaf28306d5f4e1085662c7a8ae82ae6"
      unitRef="U001">229000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="c20241031"
      decimals="-3"
      id="Fact_eca5988ce5944a6889e9aa4177e7f42a"
      unitRef="U001">57000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_9f736d4daf374e2bac9b48c9b6d6eb0b"
      unitRef="U001">4962000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_d5a0d202a85a4ae49b7659a7e699912b"
      unitRef="U001">17997000</us-gaap:FinanceLeaseLiability>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_8521640fb285498ab223e0621c3611cb">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; color: rgb(0, 0, 0);"&gt;The following table presents lease costs for 2024, 2023, and 2022.&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,255&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,278&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,253&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Short-term lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,273&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;462&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;469&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Variable lease costs&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;595&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;656&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;603&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest on finance lease&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;330&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;426&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;522&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Amortization of ROU assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,950&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,870&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,917&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1ca7703a3db24ea3b6a14b256550f24e"
      unitRef="U001">2255000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_6fe1a959178a4327b6e6a1a081ff17b1"
      unitRef="U001">2278000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_9d3f09bd1e16492fab5c54d4566e6142"
      unitRef="U001">2253000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_2287dfeccebc4dfea4dfe039049bd2e7"
      unitRef="U001">1273000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_75597073733a485b862bb4db5e075481"
      unitRef="U001">462000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_36a7b87cfa5842f99345de82dbd5b7f2"
      unitRef="U001">469000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_91b352481c434e06a12244afe748406e"
      unitRef="U001">595000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e6ea7b2b46df4392a08eb21d5c060e80"
      unitRef="U001">656000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2cbc1518a88645e69c4414d73dc771cd"
      unitRef="U001">603000</us-gaap:VariableLeaseCost>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_6dbcf261259045d9b1563a0e4b21472b"
      unitRef="U001">330000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_f1252da5a1904e3b981029d461ebe39a"
      unitRef="U001">426000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_c2a7d4435de9494c8514ceba38273b18"
      unitRef="U001">522000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b3a50b27454340649a6e35d85c306f40"
      unitRef="U001">2950000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1b3ad51b35c1423e847e90777ca753f6"
      unitRef="U001">2870000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_c88214fc1d6e4bacb88acb7618742346"
      unitRef="U001">2917000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <plab:LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock
      contextRef="c20231101to20241031"
      id="Text_d01834a69cca403a953d2cfe10872367">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The
      following table presents statistical information related to the Company&#x2019;s operating and finance leases. The information presented is as of the balance sheet dates.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 51%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="7" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 51%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Classification&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; remaining&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;lease term (in&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; years)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;br/&gt;
            &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; average discount&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;rate&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;remaining &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;lease term (in&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#160;years)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="3" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;average&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; discount rate&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 51%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: middle; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.8&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3.2&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3.7&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.4&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 51%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: middle; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;0.2&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.5&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.2&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.5&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:LesseeOperatingLeaseWeightedAverageRemainingLeaseTermDiscountRateTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20241031"
      id="Fact_8f1aa7d9fef94fd1b947e88b3401a05f">P2Y9M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20241031"
      decimals="3"
      id="Fact_cd152f12b7ad47009c1249a5eb82655a"
      unitRef="U005">0.032</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20231031"
      id="Fact_73d61ba2ee1d4c7b9ced7ad10061d31b">P3Y8M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20231031"
      decimals="3"
      id="Fact_4602efd8750f4bf48ecba2542312e338"
      unitRef="U005">0.024</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20241031"
      id="Fact_a956213dce324c29a3e4d56889282169">P0Y2M12D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="c20241031"
      decimals="3"
      id="Fact_e1251471d6a04630b24a5ada7eae2624"
      unitRef="U005">0.015</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20231031"
      id="Fact_fccc2c39624f4f07b151450fbf6d292e">P1Y2M12D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="c20231031"
      decimals="3"
      id="Fact_0c1db4cedc5346d78709c884908aa354"
      unitRef="U005">0.015</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <plab:CashAndNonCashInformationRelatedToLeasesTextBlock
      contextRef="c20231101to20241031"
      id="Text_626cb4449a5243dfa2d5630ed87ba1d6">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="background-color: rgb(255, 255, 255); letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-weight: 400; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The following table presents the effects of leases on the Company&#x2019;s 2024, 2023, and 2022 consolidated statements of cash flows, and provides leases-related non-cash information for those years.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; padding-bottom: 2px; white-space: nowrap;"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash flows used for operating leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,241&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,271&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;2,259&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash flows used for finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;330&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;429&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;566&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Financing cash flows used for finance leases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,621&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,521&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;7,289&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;ROU assets obtained in exchange for operating lease obligations&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;842&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,116&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;513&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:CashAndNonCashInformationRelatedToLeasesTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_360d35b8cbf749f298baf5334752d003"
      unitRef="U001">2241000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_bed5667e96614c8da9cb598269ac2341"
      unitRef="U001">2271000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_5bee82620a5a4e81baca15794667728f"
      unitRef="U001">2259000</us-gaap:OperatingLeasePayments>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b3c90b934c3341b3b62662a0233ca5f9"
      unitRef="U001">330000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_6ffd8c3ed33a465f881f901545f9a7c6"
      unitRef="U001">429000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_5298c8a70015478c8e6ad03b52e2357d"
      unitRef="U001">566000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_36b76a128040452cbc81697256a1d6e3"
      unitRef="U001">6621000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_00411ff6919e498793a48f43b0ec265e"
      unitRef="U001">6521000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_fe00749efd3c4fcdaead431fe9b22310"
      unitRef="U001">7289000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_eb5bcdf4a319423c868eae15c74f5dae"
      unitRef="U001">842000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_b8edc2a280fc4fc38285e562d4cf24c6"
      unitRef="U001">5116000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_f78526c76b494e70aea3718b3b5b62c3"
      unitRef="U001">513000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="c20231101to20241031"
      id="Text_2b2bd9a483db433f8de9898d98e56b1f">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;"&gt;NOTE 12 - SHARE-BASED
      COMPENSATION&lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; background-color: rgb(255, 255, 255); font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;In March 2016, shareholders
        approved the Company&#x2019;s current equity incentive compensation plan (&#x201c;the Plan&#x201d;), under which incentive stock options, non-qualified stock options, stock grants, stock-based awards, restricted stock, restricted stock units, stock appreciation rights,
        performance units, performance stock, and other stock or cash awards may be granted. Shares to be issued under the Plan may be authorized and unissued shares, issued shares that have been reacquired by &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;the Company&lt;/span&gt; (in the open market or in private transactions), or a combination thereof. The maximum
        number of shares of common stock approved that may be issued under the Plan was four million shares.&#160;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 24px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt; On March 16, 2023, at its annual meeting of shareholders,
          the shareholders of Photronics, Inc., approved amendments to the Plan to increase the number of shares available for issuance by an additional one
          million shares, thereby increasing the shares available for issuance under the Plan from four million to five million.&lt;/span&gt; Awards may be granted to officers, employees, directors, consultants, advisors, and independent contractors of Photronics or its
        subsidiaries. In the event of a change in control (as defined in the Plan)&lt;/span&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;or at the discretion of the compensation committee;&lt;/span&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; the vesting of awards may be accelerated. The Plan, aspects of which are more fully described below, prohibits further awards from being issued under prior plans. &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;The table below presents
        information on the Company&#x2019;s share-based compensation expenses for the three most recent fiscal years. &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Expense reported in:&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Cost of goods sold&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,704&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,259&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;868&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Selling, general, and administrative&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,124&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,962&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,803&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Research and development&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,062&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;780&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;637&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total expense incurred&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13,890&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,001&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,308&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;Expense by award type:&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Restricted stock awards *&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;13,868&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;7,909&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,800&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Stock options&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;1&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;298&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Employee stock purchase plan&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;22&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;91&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;210&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom"&gt;Total expense incurred&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;13,890&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;8,001&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;6,308&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income tax benefits of share-based compensation&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,156&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;715&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;449&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;* During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-style: italic;"&gt;Restricted Stock Awards&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;"&gt;We periodically grant restricted stock awards, the restrictions on which
      typically lapse over a service period of &lt;span style="-sec-ix-hidden:Fact_35a7636fabec45859dd6fb4811787cac"&gt;one&lt;/span&gt; to four years. The fair values of the awards are determined on the date of grant, based on the closing stock price of &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;the Company&#x2019;s&lt;/span&gt; common stock.&lt;/span&gt; &lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;"&gt;A summary of restricted stock award activity during 2024 and the status of the Company&#x2019;s&#160; restricted stock awards as of October 31, 2024, is presented below.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;
     &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: #000000 2px solid; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Restricted Stock&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-Average&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fair Value at&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Grant Date&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Outstanding at October 31, &lt;span style="text-indent: 0pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,238,297&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;16.27&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Granted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;865,050&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;29.50&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Vested&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(550,069&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17.74&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cancelled&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(129,676&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.90&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Outstanding at October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,423,602&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23.23&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Expected to vest as of October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,292,883&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23.14&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The table below presents additional information on &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;the Company&#x2019;s&lt;/span&gt; restricted stock awards for the three most recent fiscal years.&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Number of shares granted&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;865,050&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;791,925&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;654,224&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Weighted-average grant-date fair value of awards (in dollars per share)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;29.50&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;16.84&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;18.73&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;Compensation costs not yet recognized&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;21,303&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;12,760&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;8,949&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom"&gt;Weighted-average amortization period (in years)&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.8&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.8&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.7&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Fair value of awards for which restrictions lapsed&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;9,755&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;6,256&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;5,212&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom"&gt;Shares outstanding at balance sheet date&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;1,423,602&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;1,238,297&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;893,704&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;

      &lt;br class="Apple-interchange-newline"/&gt;&lt;/div&gt;

&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-align: left; text-transform: none;"&gt;Stock Options&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;Option awards generally vest in &lt;span style="-sec-ix-hidden:Fact_bbe2f99fe0104d4199695adc89834fdf"&gt;one&lt;/span&gt; to four years and have a ten-year contractual term. All incentive and non-qualified stock option grants must have an exercise price no less than the market value of the underlying
      common stock on the date of grant. The grant-date fair values of options are based on closing prices of the Company&#x2019;s common stock on the dates of grant and are calculated using the Black-Scholes option pricing model. Expected volatility is based on
      the historical volatility of the Company&#x2019;s common stock. The Company uses historical option exercise behavior and employee termination data to estimate expected term, which represents the period of time that options granted are expected to remain
      outstanding. The risk-free rate of return for the estimated term of an option is based on the U.S. Treasury yield curve in effect at the date of grant.&lt;/div&gt;

&lt;div&gt;
     &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The table below presents a summary of stock
      options activity during 2024 and information on stock options outstanding at October 31, 2024.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); margin-left: 0px; margin-right: auto; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 55%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
              &lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Weighted-Average&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercise Price&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); width: 9%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Weighted-Average&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Remaining&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Contractual Life&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Aggregate&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Intrinsic Value&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Outstanding at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;472,275&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.18&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Granted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercised&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;(191,650&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;9.86&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Cancellations,
              forfeitures, and adjustments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; border-bottom: 2px solid rgb(0, 0, 0); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;(3,000&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.43&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Outstanding at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;277,625&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;1.94 years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;3,445&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercisable at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;277,625&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;1.94 years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;3,445&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Expected to vest as
              of October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;- years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;
    &lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; text-indent: 18pt;"&gt;The table below presents additional information on stock option awards for the three most recent fiscal years.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;Number of options granted in period&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total intrinsic value of options exercised&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,981&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,654&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,108&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cash received from option exercises&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,888&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,101&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,275&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%;" valign="bottom"&gt;Compensation cost not yet recognized&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;13&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Weighted-average amortization period for cost not yet recognized (in years)&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;0.2&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;
       &lt;br/&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-transform: none;"&gt;Employee Stock Purchase Plan &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The Company&#x2019;s Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) permits employees to purchase
          Photronics, Inc. common shares at 85% of the lower of the closing market price at the commencement or ending date of the Plan year
          (which is approximately one year from the commencement date). The Company recognizes the ESPP expense over that same period. As of
          October 31, 2024, the maximum number of shares of common stock approved by the Company&#x2019;s shareholders to be purchased under the ESPP was 1.85
          million shares, of which approximately 1.6 million shares had been issued through October 31, 2024. As of October 31, 2024, there is
          unrecognized compensation cost of $0.2 million.&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c20230315"
      decimals="-6"
      id="Fact_8d77409f95ed4bcdb95dc595f045d08f"
      unitRef="U002">4000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
      contextRef="c20230316to20230316"
      decimals="-6"
      id="Fact_90947fc238f747ba8905c574c1f6c207"
      unitRef="U002">1000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c20230315"
      decimals="-6"
      id="Fact_f455e32acda54a27b82953cf04138cc2"
      unitRef="U002">4000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c20230316"
      decimals="-6"
      id="Fact_e75aa277cd2e44bd8c60267a8d5a38be"
      unitRef="U002">5000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="c20231101to20241031"
      id="Text_ca6545b75eb44aabaa6376727fae51e6">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;The table below presents
        information on the Company&#x2019;s share-based compensation expenses for the three most recent fiscal years. &lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Expense reported in:&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Cost of goods sold&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,704&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,259&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;868&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Selling, general, and administrative&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,124&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,962&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,803&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;&#160;&#160;&#160;&#160;&#160;Research and development&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,062&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;780&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;637&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total expense incurred&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13,890&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,001&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,308&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;Expense by award type:&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Restricted stock awards *&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;13,868&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;7,909&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,800&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Stock options&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;1&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;298&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt"&gt;Employee stock purchase plan&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;22&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;91&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;210&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; padding-bottom: 4px;" valign="bottom"&gt;Total expense incurred&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;13,890&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;8,001&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;6,308&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64.02%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income tax benefits of share-based compensation&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,156&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;715&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9.04%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;449&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1.02%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;* During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.&lt;br/&gt;
      &lt;/div&gt;
</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_IncomeStatementLocationAxis_CostOfSalesMember"
      decimals="-3"
      id="Fact_43ccb95730ab431c9fec6be550198289"
      unitRef="U001">2704000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_IncomeStatementLocationAxis_CostOfSalesMember"
      decimals="-3"
      id="Fact_b5bf1ff8b4ad4da7834010e210be3d5c"
      unitRef="U001">1259000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_IncomeStatementLocationAxis_CostOfSalesMember"
      decimals="-3"
      id="Fact_a136597be42f43cdbe50ca584e86cdba"
      unitRef="U001">868000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="Fact_5c16a556de474ed48cd97a5689c47702"
      unitRef="U001">10124000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="Fact_60524e54cc7b46e5af2c6fc3b64e3c1b"
      unitRef="U001">5962000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember"
      decimals="-3"
      id="Fact_420b5d18cf7f4f209a268c958894e2a5"
      unitRef="U001">4803000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="Fact_bd069a6c1ed04553a0e49a97247c92dc"
      unitRef="U001">1062000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="Fact_915207789b4f459abc4127cf403d1690"
      unitRef="U001">780000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_IncomeStatementLocationAxis_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="Fact_5c3ccbfafd274d8784e07cd478ce845a"
      unitRef="U001">637000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1e88af636b094462ba500d52ff1cfec1"
      unitRef="U001">13890000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_127eccfd240b4ae785447fe4f8eeb967"
      unitRef="U001">8001000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_97de82be78294ede800b33fb63059e01"
      unitRef="U001">6308000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_b6345882ec6e4416bf5caec90e37cb0e"
      unitRef="U001">13868000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_1247915d6df5498893078c153721d5bc"
      unitRef="U001">7909000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_26e56986bbb7429da0abfdf7e16023f6"
      unitRef="U001">5800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_284cdd430af248809139323139c93642"
      unitRef="U001">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_ee4a27e2ae5f41e1a9b324990147668a"
      unitRef="U001">1000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_21d05b7b228840819588fee2c94afe2e"
      unitRef="U001">298000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember"
      decimals="-3"
      id="Fact_2b8cbf04cd41448fb0adb1053df1cbc4"
      unitRef="U001">22000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockMember"
      decimals="-3"
      id="Fact_248c0c7af95441e69aaecb743b846f20"
      unitRef="U001">91000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockMember"
      decimals="-3"
      id="Fact_ba7467fa036e4f1c96f51d37aba2ee44"
      unitRef="U001">210000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_6c19fd8ca0614473b2e12ae3b081b8ae"
      unitRef="U001">13890000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_ab9990c7f1db41d7a5c54a8fbb2b901e"
      unitRef="U001">8001000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_9d86e426a6294905928d528795037f38"
      unitRef="U001">6308000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_80c89a2aca3f4f20851d5382b992a9a0"
      unitRef="U001">1156000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_5ed638e51b044132b440552b9433d403"
      unitRef="U001">715000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_d6eb65f1ef0447e1bd1a912d52fe97cc"
      unitRef="U001">449000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <plab:NumberOfExecutivesDeparted
      contextRef="c20231101to20241031"
      decimals="INF"
      id="Fact_ecae7304bc0e45abadd97e155733dbdc"
      unitRef="U007">2</plab:NumberOfExecutivesDeparted>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_IncomeStatementLocationAxis_SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis_ExecutiveOfficerMember"
      decimals="-5"
      id="Fact_224f8c253e4644cd84e14e12d9649e0f"
      unitRef="U001">1200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      id="Text_f55655446d17467889f3a95253549f2f">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-style: italic;"&gt;Restricted Stock Awards&lt;/span&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;
&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;"&gt;We periodically grant restricted stock awards, the restrictions on which
      typically lapse over a service period of &lt;span style="-sec-ix-hidden:Fact_35a7636fabec45859dd6fb4811787cac"&gt;one&lt;/span&gt; to four years. The fair values of the awards are determined on the date of grant, based on the closing stock price of &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;the Company&#x2019;s&lt;/span&gt; common stock.&lt;/span&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember_RangeAxis_MaximumMember"
      id="Fact_d670cf52cbc54590be0f47a7dde2f3f6">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_c86502aa5baa47528be72469a8c3fe6d">&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal;"&gt;A summary of restricted stock award activity during 2024 and the status of the Company&#x2019;s&#160; restricted stock awards as of October 31, 2024, is presented below.&lt;/span&gt;
&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;
     &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: #000000 2px solid; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Restricted Stock&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Weighted-Average&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fair Value at&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Grant Date&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Outstanding at October 31, &lt;span style="text-indent: 0pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,238,297&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;16.27&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Granted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;865,050&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;29.50&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Vested&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(550,069&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17.74&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cancelled&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(129,676&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.90&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Outstanding at October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,423,602&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23.23&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Expected to vest as of October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,292,883&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23.14&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_06d0ec0db0924cd98b58c1d96870e2c2"
      unitRef="U002">1238297</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_b6ab4cb4fff14856bfa95126558b66fb"
      unitRef="U003">16.27</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_3ec90c9640a2481cac51050e3e0f504b"
      unitRef="U002">865050</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_3bc3d5db831a41d49c11d2cd35bd62cc"
      unitRef="U003">29.5</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_243a967fdccc41f2a8cd16e2579c6f0a"
      unitRef="U002">550069</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_78bc630209494ec0b0fe843f55f2c3ff"
      unitRef="U003">17.74</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_914a51b355e34b75a8f551427372a5ed"
      unitRef="U002">129676</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_eb9b3878eb034864af3ab46187bf29b3"
      unitRef="U003">21.9</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_199f2f645b3a4a2fb0b5b5006760fb2a"
      unitRef="U002">1423602</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_129989aa1ff743b781457bb1313939b0"
      unitRef="U003">23.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_e4f777a2c4b0410094c5a6dce5d712d8"
      unitRef="U002">1292883</plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVest>
    <plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_d550eb20651d4a2e98070e7f2b88c907"
      unitRef="U003">23.14</plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpectedToVestWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_5925bad84f564675bedd8e720f2e9f9c">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The table below presents additional information on &lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;the Company&#x2019;s&lt;/span&gt; restricted stock awards for the three most recent fiscal years.&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="letter-spacing: normal; white-space: normal; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-weight: 400; text-align: left; text-indent: 0px; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="letter-spacing: normal; width: 100%; word-spacing: 0px; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-transform: none;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Number of shares granted&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;865,050&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;791,925&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;654,224&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Weighted-average grant-date fair value of awards (in dollars per share)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;29.50&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;16.84&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;18.73&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;Compensation costs not yet recognized&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;21,303&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;12,760&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;8,949&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom"&gt;Weighted-average amortization period (in years)&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.8&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.8&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;2.7&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;Fair value of awards for which restrictions lapsed&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;9,755&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;6,256&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal;"&gt;5,212&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; font-weight: normal;" valign="bottom"&gt;Shares outstanding at balance sheet date&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;1,423,602&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;1,238,297&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal;" valign="bottom"&gt;893,704&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_5aec2b91873b460ca41d6e87cd46522e"
      unitRef="U002">865050</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_42275ff712704e8cb11f207da475cd02"
      unitRef="U002">791925</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_bd61c5c7b631461cb4dd5a302ec62799"
      unitRef="U002">654224</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_0b9f618127ca4eac80e76ab72a276c5c"
      unitRef="U003">29.5</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_7e190a08bf6449ada7119f7eb2fa6c92"
      unitRef="U003">16.84</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="2"
      id="Fact_c00d6d365cc84697af5ba302acde9d7a"
      unitRef="U003">18.73</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_cd78afea90cd472a99feb8b6518c43ee"
      unitRef="U001">21303000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="c20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_156c2fe65d4e46f39ea9f38376721be6"
      unitRef="U001">12760000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="c20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_a0f07893aed746a181f4186b63caf14f"
      unitRef="U001">8949000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      id="Fact_d004c4eb7e1743e69725f603a4773d84">P2Y9M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"
      id="Fact_0481a3ad34ae44eebded3e92ce5d3ac2">P2Y9M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"
      id="Fact_2ea168e5993a4751b9bc2bb36c60025a">P2Y8M12D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="c20231101to20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_3be0e36562cd408e9b01f5fc6cff2008"
      unitRef="U001">9755000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="c20221101to20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_f0531c28cc4b4f20a55b47a17b6c6975"
      unitRef="U001">6256000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="c20211101to20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="-3"
      id="Fact_66cd119dfec9429486c6368c688dadfd"
      unitRef="U001">5212000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20241031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_4aacb2771138443897395a83c8c8f564"
      unitRef="U002">1423602</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20231031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_c2647f0e56f649599dae7a96b94c4370"
      unitRef="U002">1238297</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20221031_AwardTypeAxis_RestrictedStockMember"
      decimals="0"
      id="Fact_9e3b5954f2c141cfa0a92606518eafb6"
      unitRef="U002">893704</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      id="Text_387a9d67dd484f71b4fb9f533c6adeaf">
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-align: left; text-transform: none;"&gt;Stock Options&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;Option awards generally vest in &lt;span style="-sec-ix-hidden:Fact_bbe2f99fe0104d4199695adc89834fdf"&gt;one&lt;/span&gt; to four years and have a ten-year contractual term. All incentive and non-qualified stock option grants must have an exercise price no less than the market value of the underlying
      common stock on the date of grant. The grant-date fair values of options are based on closing prices of the Company&#x2019;s common stock on the dates of grant and are calculated using the Black-Scholes option pricing model. Expected volatility is based on
      the historical volatility of the Company&#x2019;s common stock. The Company uses historical option exercise behavior and employee termination data to estimate expected term, which represents the period of time that options granted are expected to remain
      outstanding. The risk-free rate of return for the estimated term of an option is based on the U.S. Treasury yield curve in effect at the date of grant.&lt;/div&gt;
</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember"
      id="Fact_f6d97a42f0c742ab94c2ad2d877a21ac">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      id="Fact_4301ea94edc648289344a0e67c2d2cff">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_7832a177afb64ffcaec367172df5c785">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;The table below presents a summary of stock
      options activity during 2024 and information on stock options outstanding at October 31, 2024.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); margin-left: 0px; margin-right: auto; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 55%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
              &lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Weighted-Average&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercise Price&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); width: 9%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Weighted-Average&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Remaining&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Contractual Life&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Aggregate&lt;/div&gt;
            &lt;span style="font-weight: bold;"&gt; &lt;/span&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-style: normal; font-variant: normal; text-transform: none;"&gt;Intrinsic Value&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Outstanding at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;472,275&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.18&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Granted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercised&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;(191,650&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;9.86&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; width: 55%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Cancellations,
              forfeitures, and adjustments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; border-bottom: 2px solid rgb(0, 0, 0); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;(3,000&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.43&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: middle; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Outstanding at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;277,625&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;1.94 years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;3,445&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 55%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Exercisable at
              October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;277,625&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;10.39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;1.94 years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;3,445&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 55%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;Expected to vest as
              of October 31, &lt;span style="text-indent: 0pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;- years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; font-style: normal; font-variant: normal; text-transform: none;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_c4cbf3bf65864be992d1d1e72a3c014e"
      unitRef="U002">472275</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_239b74c26d284b008e359e13d929a6a0"
      unitRef="U003">10.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="INF"
      id="Fact_c8b9e61f4a824e2c867265bf1d2505f1"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_55562d0b5499445a9f951db9c0776982"
      unitRef="U003">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_5e9f1e6dce8d426fad3f1058594684d3"
      unitRef="U002">191650</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_f298a258c9684b9faaf1918e956c4331"
      unitRef="U003">9.86</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_0954cf1604af427abe9d5d66a62abcbe"
      unitRef="U002">3000</plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsCancellationsForfeituresAndAdjustmentsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_30627588ecd04974b4a5e820736d50b2"
      unitRef="U003">10.43</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_ad83dc810ec54d6f81e4d1c261852f7b"
      unitRef="U002">277625</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_1e50618dd0794e279edf293a54027559"
      unitRef="U003">10.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      id="Fact_63fda878da184b2f849efea6586776c0">P1Y11M8D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_64af2dddfb62455d8e448f1a3f4c2a9a"
      unitRef="U001">3445000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_06d068c4f9f84715b6fdec5bb7d81f4b"
      unitRef="U002">277625</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_eb219bb0a71b40e3a85b99097dcff212"
      unitRef="U003">10.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      id="Fact_b42f2b16ca5540a0bd30a0d6222a844a">P1Y11M8D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_a7fec708ec354fb0b8fe9d5b0d4a8458"
      unitRef="U001">3445000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="INF"
      id="Fact_b5a3db721c484744a34f88990a4e4d5c"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="0"
      id="Fact_cff0dea649c6417588e15356b70aac18"
      unitRef="U003">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_4e5c65bbcd014f9caf9dc94dd8e91443"
      unitRef="U001">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_a4f191429b9240fa91011ef0f77b035c">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: left; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; text-indent: 18pt;"&gt;The table below presents additional information on stock option awards for the three most recent fiscal years.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; letter-spacing: normal; text-transform: none; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;Number of options granted in period&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total intrinsic value of options exercised&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,981&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,654&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,108&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cash received from option exercises&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,888&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,101&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,275&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%;" valign="bottom"&gt;Compensation cost not yet recognized&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;13&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Weighted-average amortization period for cost not yet recognized (in years)&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;0.2&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="INF"
      id="Fact_e4ecb4e08f8748688adccb785e72c006"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="INF"
      id="Fact_dbc03d3b03274637905ab4f729f037ca"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="INF"
      id="Fact_2e4bdb97bc9f48beb3cfae3390502a2f"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_978e81a1243b4f86867652563cef5e6b"
      unitRef="U001">2981000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_ad68989ab05d4497a7beb522da212539"
      unitRef="U001">1654000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_779ac6f9b36149ea82ef94ccb27fe9d9"
      unitRef="U001">5108000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_ca1d68a87ceb4268ba15058a9256d192"
      unitRef="U001">1888000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20221101to20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_b1d741e88401448b8bf1150b6f2d5ce0"
      unitRef="U001">1101000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_68fdfd473e824e46b1f50b00289fd331"
      unitRef="U001">5275000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="c20241031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_ce8f9a9e4ed243f5aa959699afb37d97"
      unitRef="U001">0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="c20231031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_c4edf97a48c34de6aa48871a981a396e"
      unitRef="U001">0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="c20221031_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="-3"
      id="Fact_516e8e4a46dd4e9d9154a3de38ee7bac"
      unitRef="U001">13000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="c20211101to20221031_AwardTypeAxis_EmployeeStockOptionMember"
      id="Fact_54ef0a6fe9bf4c5ea42c00c9a9011a2b">P0Y2M12D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <plab:EmployeeStockPurchasePlanPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_8558f5d6a7df48158df70f8ad60c57c8">
&lt;div&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; font-weight: bold; text-transform: none;"&gt;Employee Stock Purchase Plan &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-align: left; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-align: left; text-indent: 0px; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The Company&#x2019;s Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) permits employees to purchase
          Photronics, Inc. common shares at 85% of the lower of the closing market price at the commencement or ending date of the Plan year
          (which is approximately one year from the commencement date). The Company recognizes the ESPP expense over that same period. As of
          October 31, 2024, the maximum number of shares of common stock approved by the Company&#x2019;s shareholders to be purchased under the ESPP was 1.85
          million shares, of which approximately 1.6 million shares had been issued through October 31, 2024. As of October 31, 2024, there is
          unrecognized compensation cost of $0.2 million.&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
</plab:EmployeeStockPurchasePlanPolicyTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember"
      decimals="2"
      id="Fact_e2bc8ab99a2b46b49b15c9e70d4c6d8f"
      unitRef="U005">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember"
      id="Fact_fbf2be1745cd4c2bb5a1cb9ee151af17">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c20241031_AwardTypeAxis_EmployeeStockMember"
      decimals="-4"
      id="Fact_48a9288ee75d425398f54d760e9cdd0f"
      unitRef="U002">1850000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued
      contextRef="c20231101to20241031_AwardTypeAxis_EmployeeStockMember"
      decimals="-5"
      id="Fact_060e44d0bad34b04863a1ecb1fb2ec36"
      unitRef="U002">1600000</plab:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCumulativeSharesIssued>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="c20241031_AwardTypeAxis_EmployeeStockMember"
      decimals="-5"
      id="Fact_aa028819b0b043e2b5d133c17c677bba"
      unitRef="U001">200000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_1c92de86ddbb4e23890e30618241ed91">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 13 - EMPLOYEE RETIREMENT PLANS&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;We maintain a 401(k) Savings and Profit-Sharing Plan (&#x201c;401(k) Plan&#x201d;) which covers all full and certain part-time U.S. employees who
      have completed three months of service and are 18 years of age or older. Under the terms of the 401(k) Plan, employees may contribute up to 50% of
      their salary, subject to certain maximum amounts, which will be matched by the Company at 100% of the employee&#x2019;s contributions that are up
      to 4% of the employee&#x2019;s compensation. Employee and employer contributions vest immediately upon contribution. The total employer
      contributions for all of the Company&#x2019;s defined contribution plans were $1.2 million, $0.8 million and $0.7 million in 2024, 2023, and 2022, respectively.&lt;/div&gt;
</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <plab:NumberOfMonthsOfServiceCompleted
      contextRef="c20231101to20241031"
      id="Fact_6022e76d29494ba6ae2cc09e49d8b0ef">P3M</plab:NumberOfMonthsOfServiceCompleted>
    <plab:MinimumAgeOfEmployeesToComeUnderRetirementPlan
      contextRef="c20231101to20241031"
      id="Fact_59b135387ca54458ad3b379e887c777d">P18Y</plab:MinimumAgeOfEmployeesToComeUnderRetirementPlan>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_c722fd7701f8415db0117ab456e12d5c"
      unitRef="U005">0.50</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_be1609efdd404db49c03c91b6bde51ab"
      unitRef="U005">1</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_8ee55fd9a7564848b3ae00c67f81e99a"
      unitRef="U005">0.04</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="c20231101to20241031"
      decimals="-5"
      id="Fact_a28b9a4497464d49a8cec298799237d4"
      unitRef="U001">1200000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="c20221101to20231031"
      decimals="-5"
      id="Fact_d68e22edd1cd48929ee7fbe1fef1ee0b"
      unitRef="U001">800000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="c20211101to20221031"
      decimals="-5"
      id="Fact_4215d955631848cc9dbf9c75abeae4bc"
      unitRef="U001">700000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_5e11cf6807534702a9f3936c687830d2">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 14 - INCOME TAXES&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; text-indent: 18pt;"&gt;On December 15, 2022, the European Union (EU) Member States formally adopted the EU&#x2019;s Pillar Two Directive, which generally provides for a minimum
        effective tax rate of 15%, as established by the Organization for Economic Co-operation and Development (OECD) Pillar Two Framework. The EU effective dates are January 1, 2024, and January 1, 2025, for different aspects of the directive. A
        significant number of other countries are expected to also implement similar legislation with varying effective dates. The Company is currently not subject to Pillar Two but is continuously evaluating the potential impact of the Pillar Two
        Framework to ensure we are compliant in the future.&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income before the income tax provisions consists of the following:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,145&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,737&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,813&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;227,270&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;271,683&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;237,220&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;247,415&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;269,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;239,033&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: bold; font-style: italic; font-size: 10pt; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-variant: normal; text-transform: none;"&gt;Income Tax Provision&lt;/span&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: bold;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of our income tax provisions are presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;95&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;14&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;64,861&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;71,225&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;58,981&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;64,956&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;71,239&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;58,982&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,402&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(939&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;799&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;(1,389&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;(927&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;809&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,567&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;59,791&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below presents a reconciliation of income taxes calculated by applying the statutory U.S. federal income tax rate to our
      income tax provisions of the reporting periods.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;U.S. federal income tax at statutory rate&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;51,957&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,689&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;50,197&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Changes in valuation allowance&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,986&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(256&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,462&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign rate differential&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,695&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,394&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,941&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tax credits&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(5,209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,425&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,368&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;Uncertain tax positions, including reserves, settlements and resolutions&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,226&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,328&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,214&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other, net&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,884&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,582&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,269&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-style: italic;"&gt;Income tax provision&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,567&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;59,791&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
        &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 18%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Reporting&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Period&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;U.S. Statutory&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Tax Rates&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics &lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Effective Tax&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Rates&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 40%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Primary Reasons for Differences&lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;25.7%&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;&lt;br/&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 18%; text-align: center;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;26.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 18%; background-color: rgb(204, 238, 255); text-align: center;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2022&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;25.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions; and the establishment of uncertain tax positions in non-U.S. jurisdiction.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;

&lt;div&gt;
      &lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: left; background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"&gt;Deferred Income Tax Assets
        and Liabilities&lt;/div&gt;

&lt;div style="text-align: left;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The net deferred income tax assets consist of the following:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;As of&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;"&gt;Deferred income tax
                  assets&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net operating losses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,941&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;26,377&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Reserves not currently deductible&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,776&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tax credit carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,550&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,442&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share-based compensation&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,102&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Property, plant and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,710&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,844&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="margin-left: 9pt;"&gt;Research intangibles&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,721&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lease liabilities&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;4,116&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;5,743&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;62,032&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,074&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Valuation allowances&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(30,633&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(32,619&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;31,399&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;30,455&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;ROU assets&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(7,351&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(8,193&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Other&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(1,458&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(1,200&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(8,809&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(9,393&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net deferred income tax assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,590&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,062&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 8.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Classification&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Deferred income tax assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23,059&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,297&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Other liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(469&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(235&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,590&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,062&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We have established a valuation allowance for a portion of our deferred tax assets because we believe, based on the weight of all available evidence,
      that it is more likely than not that a portion of our deferred tax assets will expire prior to utilization. In 2024 the valuation allowance decreased as a result of management&#x2019;s determination that tax benefits on deferred tax assets would more likely
      than not be realized and, therefore, decreased the valuation allowance to include these deferred tax assets.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Due to the Tax Cuts and Jobs Act, which was signed into law in December 2017, as of fiscal year end 2018, U.S. deferred taxes were no longer provided on
      the undistributed earnings of non-U.S. subsidiaries. Our policy to indefinitely reinvest these earnings in non-U.S. operations remains unchanged for the purpose of determining deferred tax liabilities for U.S. state and foreign withholding taxes.
      Therefore, should we elect in the future to repatriate the remaining foreign earnings deemed to be indefinitely reinvested, we may incur additional state and foreign withholding tax expense on those earnings, the amount of which is not practicable to
      compute.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"&gt; &lt;span style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tax &lt;/span&gt;Credits and Carryforwards &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables present our available operating loss and credit carryforwards as of October 31, 2024, and their related
      expiration periods.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 76%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Operating Loss Carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Expiration Period&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;55,729&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: right; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_2e15202e5cff414388ac6f6c863b56a3"&gt;2030&lt;/span&gt;-Indefinite&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;135,736&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_34100c5eedc249c59a0ecd6f981b8cf9"&gt;2025&lt;/span&gt;-Indefinite&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;165&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_347c339d30ed4499a61835a1dcf4e686"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_89a71140677543b98550247b393e4c6b"&gt;2034&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Tax Credit Carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Expiration Period&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal research and development&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,042&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_ada4c71dc88e4a1481325de16531bfdc"&gt;2044&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;Federal 48D credit&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;2,276&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&lt;span style="-sec-ix-hidden:Fact_ce8445dff0d5453f9609997657734e2d"&gt;2043&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_512726a9d52c48fe84be8a862e033b07"&gt;2044&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,357&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_8a8dcb3a0ef94c4ab0cae95b84da7412"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_908a2b39d03e4d05baa4ed0f4cf2c141"&gt;2038&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold; background-color: rgb(255, 255, 255); font-variant: normal; text-transform: none;"&gt;Uncertain Tax Positions&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;"&gt;We include unrecognized tax benefits in &lt;span style="font-style: italic;"&gt;Other liabilities&lt;/span&gt;, and we include any applicable interest and penalties related to uncertain tax positions in our income tax provision. &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;A reconciliation of the beginning and ending amounts of unrecognized tax benefits is presented below. The amounts in the table
      include settlements of non-U.S. audits.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at beginning of year before interest and penalties&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,332&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,204&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,534&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(Reductions) additions of tax positions in prior years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;86&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(355&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Additions based on current year tax positions&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;6,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,361&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Settlements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;(835&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(423&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(848&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lapses of statutes of limitations&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(30&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(19&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(19&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at end of year before interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;13,692&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,332&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,204&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;1,028&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;576&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;395&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at end of year including interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;14,720&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;8,908&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;5,599&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;The following table presents additional information
        on our uncertain tax positions, as of the balance sheet dates.&lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Unrecognized tax benefits that, if recognized, would impact the effective tax rate&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;14,720&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;8,908&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Accrued interest and penalties related to uncertain tax positions&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;1,028&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;576&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Although the timing of the reversal of uncertain tax positions may be uncertain, as they can be dependent upon the settlement of tax audits or
      expirations of statutes of limitations, the Company believes that the amount of uncertain tax positions (including accrued interest and penalties, and net of tax benefits) that may be resolved over the next twelve months is $0.4 million. Resolution of these uncertain tax positions may result from either or both the lapses of statutes of limitations and tax settlements. The
      Company is no longer subject to tax authority examinations in the U.S., major foreign, or state tax jurisdictions for years prior to fiscal year 2019.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-variant: normal; text-transform: none;"&gt; Income Tax Payments and Refunds &lt;/span&gt;&lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;The table below presents income taxes paid and refunds of income taxes received during the reporting periods.&lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Income taxes paid&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;62,520&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;70,362&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;37,770&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Income tax refunds received&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;2,519&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;485&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;388&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_a3279d248d8245338ea0778902e6e3c9">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Income before the income tax provisions consists of the following:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;20,145&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,737&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,813&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;227,270&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;271,683&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;237,220&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;247,415&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;269,946&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;239,033&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e64a301fe81c4a5d92774e460e62dbc7"
      unitRef="U001">20145000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_c212bfdc1821427b86463d2e583e33c9"
      unitRef="U001">-1737000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_9116f34754a644dabf67409eae19488f"
      unitRef="U001">1813000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_8dc3ebb87bf648d49471d85df5b7884c"
      unitRef="U001">227270000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_4c0ea14fbbfe4c0d9ad8b8ca8d6e81ae"
      unitRef="U001">271683000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_bfce4d72251040158091c6b4fd68f3b5"
      unitRef="U001">237220000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_166726cae95e46f1adaceb15093fc812"
      unitRef="U001">247415000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_9a6776e6158346a68407fcdad24d7201"
      unitRef="U001">269946000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_7d77b15479684025816e979d4a3b8ef5"
      unitRef="U001">239033000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_86b11c8ab97d47d8ab293fca7d7aeb12">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of our income tax provisions are presented below.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Current:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;95&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;14&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;64,861&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;71,225&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;58,981&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;64,956&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;71,239&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;58,982&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;13&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.25pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,402&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(939&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;799&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;(1,389&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;(927&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;809&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,567&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;59,791&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_667bc5dbc3ca414a96e1c47972eb6578"
      unitRef="U001">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_7fe2e2a1bac848c8a443a03e3706ac45"
      unitRef="U001">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_7836fce4cad84e2595fedff60157518f"
      unitRef="U001">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_ca1cf07cf5ad4e30a0956a422e51f7f5"
      unitRef="U001">95000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_7b45a9e500614339b2cd6a9f00846ab2"
      unitRef="U001">14000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_d02233ff55eb41d7b90531bd7a992f92"
      unitRef="U001">1000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_e1927a24e84546f9b33788bd52b28292"
      unitRef="U001">64861000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_24ff85a3dfc74406a7851305bd5d0320"
      unitRef="U001">71225000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_c37c5b26dff34d898f2a9a81fc9bcdf2"
      unitRef="U001">58981000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_eea002102578470e9e5bd8ab37f3c35b"
      unitRef="U001">64956000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_9268f31b61e041fa8b542e47f599efb7"
      unitRef="U001">71239000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_74d88fed2ad447568325506fb512f0dd"
      unitRef="U001">58982000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_594527bad4614f56bc64113acf3ad67d"
      unitRef="U001">0</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_94e52687feb8421381f1995dc16fffba"
      unitRef="U001">0</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_e50f5a5d14e5430a890d3833ce1c1993"
      unitRef="U001">0</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_0603f20bb0e84982b63559a1af68a69d"
      unitRef="U001">13000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_71583a32b8824a32bcd5500c8293494c"
      unitRef="U001">12000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_f94282382013421794ea3521c796a532"
      unitRef="U001">10000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b6f163006a1b40af9e2030654924441c"
      unitRef="U001">-1402000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e964470bdf3142e2bfe80eb22481eafc"
      unitRef="U001">-939000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_19ca697c49814b099649f4747c71c650"
      unitRef="U001">799000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_75da82ae91d64b15b2db7d27357d96d3"
      unitRef="U001">-1389000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_614f3ae270c04292a73a1b39a1690e0a"
      unitRef="U001">-927000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_c79ddd9ac2d845deb2c92bd0d95bdd63"
      unitRef="U001">809000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_cf22baf66dda427caeca9dbc483255df"
      unitRef="U001">63567000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_57a7f4e4271240dab67e5d9d10bf13e4"
      unitRef="U001">70312000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_73f679d150364b2abff93c7aaa4b5e6c"
      unitRef="U001">59791000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_50277f96ee12468dba43682973adbd4d">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below presents a reconciliation of income taxes calculated by applying the statutory U.S. federal income tax rate to our
      income tax provisions of the reporting periods.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;U.S. federal income tax at statutory rate&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;51,957&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;56,689&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;50,197&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Changes in valuation allowance&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,986&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(256&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,462&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign rate differential&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,695&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;11,394&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,941&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tax credits&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(5,209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,425&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,368&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;Uncertain tax positions, including reserves, settlements and resolutions&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,226&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,328&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,214&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other, net&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,884&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,582&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,269&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-style: italic;"&gt;Income tax provision&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,567&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,312&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;59,791&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
        &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 18%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Reporting&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Period&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;U.S. Statutory&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Tax Rates&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Photronics &lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Effective Tax&lt;/div&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; Rates&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); width: 40%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Primary Reasons for Differences&lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;25.7%&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;&lt;br/&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 18%; text-align: center;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2023&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%;"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;26.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%;" valign="bottom"&gt;
                &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions, the establishment of uncertain tax positions in
                  non-U.S. jurisdiction and loss jurisdiction pre-tax losses not being benefited due to valuation allowances.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 18%; background-color: rgb(204, 238, 255); text-align: center;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2022&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: top; text-align: center; width: 18%; background-color: rgb(204, 238, 255);"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;25.0%&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: center; vertical-align: top; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td style="vertical-align: top; width: 40%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div&gt;Non-U.S. pre-tax income being taxed at higher statutory rates in non-U.S. jurisdictions; and the establishment of uncertain tax positions in non-U.S. jurisdiction.&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
      &lt;/div&gt;
</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_3ed29218fbbe42bca8c4f8f6c858d732"
      unitRef="U001">51957000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_92273aedb88946aab8cdbbc9ed0b22dd"
      unitRef="U001">56689000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_4aed6e226d52420a80a21da99d47a175"
      unitRef="U001">50197000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_eae40a66a0194907827e00574688c61e"
      unitRef="U001">-1986000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1779c8b6dabe4b75b3c1fc1c478673b5"
      unitRef="U001">-256000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_c98f6c79d36f4bea9a9bc6c08d460629"
      unitRef="U001">-1462000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_5ebc0dc5d28042a3bad03e58b9efa4f6"
      unitRef="U001">10695000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_810b85bf29dc4df295a5dec4f3065015"
      unitRef="U001">11394000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_06d94b8750794379bcb1ec85097938ed"
      unitRef="U001">7941000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_bce64663f1c541c59c07a4b1b2432977"
      unitRef="U001">5209000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_a5f66fa12c9a4bbfad8cce02eaa251f3"
      unitRef="U001">2425000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_b306213bbfba4108abfeb3c3a1f08383"
      unitRef="U001">1368000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_1626861632ef4a1b960746e52f997703"
      unitRef="U001">6226000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_95f57f14c0b14e8ab6c66820ecfd6219"
      unitRef="U001">3328000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_71c69355695d4f47a637db41f000321a"
      unitRef="U001">3214000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_c9bd8886fcbb40d9b39272f4a29b5a34"
      unitRef="U001">1884000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_68b0db6f29614579b450f73d9e1fb03a"
      unitRef="U001">1582000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_aac61ccfabc04654a82e1e9bda0a5ec4"
      unitRef="U001">1269000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_9796d140cc0f4db1b0817e8f6c68c772"
      unitRef="U001">63567000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_ac6342bd13634413b69967faa9fcfeee"
      unitRef="U001">70312000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_2a426d1da7174aaeaeca16fa9ac469e1"
      unitRef="U001">59791000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20231101to20241031"
      decimals="3"
      id="Fact_6b2f00fbba424523a386bdeabf4ae1c8"
      unitRef="U005">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20231101to20241031"
      decimals="3"
      id="Fact_c292a238b9dc4fd394a575245ed7ef04"
      unitRef="U005">0.257</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20221101to20231031"
      decimals="3"
      id="Fact_d2dde58b9c09413da950a1a19bc9675a"
      unitRef="U005">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20221101to20231031"
      decimals="3"
      id="Fact_ffe40ae7464b4eddb2988079396715a7"
      unitRef="U005">0.26</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20211101to20221031"
      decimals="3"
      id="Fact_2cb4cdda52f04343a73b34536ace7753"
      unitRef="U005">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20211101to20221031"
      decimals="3"
      id="Fact_d179c5e28400464f8be7a7b897fafd8c"
      unitRef="U005">0.25</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_518dc55ec94441eeaa678c6cab68ebfa">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The net deferred income tax assets consist of the following:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;As of&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;"&gt;Deferred income tax
                  assets&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net operating losses&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;18,941&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;26,377&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Reserves not currently deductible&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,776&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tax credit carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,550&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,442&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share-based compensation&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,102&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Property, plant and equipment&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;10,710&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,844&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="margin-left: 9pt;"&gt;Research intangibles&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,721&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lease liabilities&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;4,116&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;5,743&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;62,032&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;63,074&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Valuation allowances&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(30,633&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(32,619&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;31,399&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;30,455&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;ROU assets&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(7,351&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(8,193&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Other&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(1,458&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(1,200&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(8,809&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(9,393&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net deferred income tax assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,590&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,062&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 8.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;Classification&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Deferred income tax assets&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;23,059&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,297&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 17.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;Other liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(469&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(235&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;22,590&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;21,062&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="c20241031"
      decimals="-3"
      id="Fact_33a2c6fcaa2c4dbeb375a4ffce663e31"
      unitRef="U001">18941000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="c20231031"
      decimals="-3"
      id="Fact_017dea2c805045cea30749ce2793062c"
      unitRef="U001">26377000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
      contextRef="c20241031"
      decimals="-3"
      id="Fact_58fea0287a5b4c709599dccfa238abbe"
      unitRef="U001">9892000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
      contextRef="c20231031"
      decimals="-3"
      id="Fact_a09085bc0b644503ab08d21d8adde23a"
      unitRef="U001">8776000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b2ee23bcf1b94299a52c9db6e8dadb35"
      unitRef="U001">12550000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther
      contextRef="c20231031"
      decimals="-3"
      id="Fact_5b3b6546f2364bdc9438e8ba37db8d55"
      unitRef="U001">10442000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="c20241031"
      decimals="-3"
      id="Fact_5962d803084c43a8862454d69a47bd8c"
      unitRef="U001">3102000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ab4eb1a1b27345bd894e46efc0160874"
      unitRef="U001">1892000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b8ba575d2b73466e91751cedb1a6e0a9"
      unitRef="U001">10710000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="c20231031"
      decimals="-3"
      id="Fact_08bd622be49742cba8f04ad7bb05be7b"
      unitRef="U001">9844000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="c20241031"
      decimals="-3"
      id="Fact_76febcd9739b4b3e8a0cc1e64bc24124"
      unitRef="U001">2721000</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="c20231031"
      decimals="-3"
      id="Fact_466c23c5a2b94f958cc3e28f2bc33eef"
      unitRef="U001">0</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <plab:DeferredTaxAssetsLeaseLiability
      contextRef="c20241031"
      decimals="-3"
      id="Fact_0f62437a75f74e238f71501822196379"
      unitRef="U001">4116000</plab:DeferredTaxAssetsLeaseLiability>
    <plab:DeferredTaxAssetsLeaseLiability
      contextRef="c20231031"
      decimals="-3"
      id="Fact_bb37384b9abf4d1c86dc793aafcb264f"
      unitRef="U001">5743000</plab:DeferredTaxAssetsLeaseLiability>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f5ae1539f2d4414ab7394d172c785c1c"
      unitRef="U001">62032000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="c20231031"
      decimals="-3"
      id="Fact_725071436502499da2f881cb0304b6cb"
      unitRef="U001">63074000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="c20241031"
      decimals="-3"
      id="Fact_1123c628d1224a018c9ffddc039637b1"
      unitRef="U001">30633000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="c20231031"
      decimals="-3"
      id="Fact_246eb704d592456ba76443d0cdbf3260"
      unitRef="U001">32619000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a572fac5ff4246608b0ee34f698d2b77"
      unitRef="U001">31399000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_878e2d4283f8482784fc3ed0dd765ffe"
      unitRef="U001">30455000</us-gaap:DeferredTaxAssetsNet>
    <plab:DeferredTaxLiabilitiesRightOfUseAsset
      contextRef="c20241031"
      decimals="-3"
      id="Fact_a100ab4b6a05435dae1dca400a7b0ca5"
      unitRef="U001">7351000</plab:DeferredTaxLiabilitiesRightOfUseAsset>
    <plab:DeferredTaxLiabilitiesRightOfUseAsset
      contextRef="c20231031"
      decimals="-3"
      id="Fact_3272843c1fe94515b034fae0b8c68bba"
      unitRef="U001">8193000</plab:DeferredTaxLiabilitiesRightOfUseAsset>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2e6b6eeba4884cb79290cedc57b299a1"
      unitRef="U001">1458000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="c20231031"
      decimals="-3"
      id="Fact_4021d3d02b5f4ceaa34351319d368451"
      unitRef="U001">1200000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f2af2268d8d54ea08572e97835c0076e"
      unitRef="U001">8809000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ac5a9025ecf64be9afddd5778c2b50a3"
      unitRef="U001">9393000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b6a66fceb06d41baba83be63dbcd2d21"
      unitRef="U001">22590000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7c0bfffdd0254e73a8f2df786e9dafbb"
      unitRef="U001">21062000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_30585839d4514a3aa6d4e94a45b838a4"
      unitRef="U001">23059000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_0386e3877db44771b9d4b53254c52f09"
      unitRef="U001">21297000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_81f671bb510743c2ba3e4612db199f94"
      unitRef="U001">469000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_7bd09c09ac994099be1f47720e9f2740"
      unitRef="U001">235000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_84597d53d9d7495292557e58004ad340"
      unitRef="U001">22590000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_b903d7c23bbb415480340640a695e554"
      unitRef="U001">21062000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:UnremittedEarningsInForeignInvestmentPolicy
      contextRef="c20231101to20241031"
      id="Text_89f954ffdd6d45fa952e08418a90bfaa">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Due to the Tax Cuts and Jobs Act, which was signed into law in December 2017, as of fiscal year end 2018, U.S. deferred taxes were no longer provided on
      the undistributed earnings of non-U.S. subsidiaries. Our policy to indefinitely reinvest these earnings in non-U.S. operations remains unchanged for the purpose of determining deferred tax liabilities for U.S. state and foreign withholding taxes.
      Therefore, should we elect in the future to repatriate the remaining foreign earnings deemed to be indefinitely reinvested, we may incur additional state and foreign withholding tax expense on those earnings, the amount of which is not practicable to
      compute.&lt;/div&gt;
</us-gaap:UnremittedEarningsInForeignInvestmentPolicy>
    <us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock
      contextRef="c20231101to20241031"
      id="Text_0728fba833df493ba92d10b59fdca2c0">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables present our available operating loss and credit carryforwards as of October 31, 2024, and their related
      expiration periods.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 76%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Operating Loss Carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Expiration Period&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; background-color: rgb(204, 238, 255); width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; background-color: rgb(204, 238, 255); width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;55,729&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: right; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_2e15202e5cff414388ac6f6c863b56a3"&gt;2030&lt;/span&gt;-Indefinite&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; background-color: rgb(204, 238, 255); width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;135,736&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_34100c5eedc249c59a0ecd6f981b8cf9"&gt;2025&lt;/span&gt;-Indefinite&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Foreign&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;165&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_347c339d30ed4499a61835a1dcf4e686"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_89a71140677543b98550247b393e4c6b"&gt;2034&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:SummaryOfOperatingLossCarryforwardsTextBlock>
    <us-gaap:OperatingLossCarryforwards
      contextRef="c20241031_IncomeTaxAuthorityAxis_DomesticCountryMember"
      decimals="-3"
      id="Fact_0216e5b9647a4ab38f4d39117bd6a291"
      unitRef="U001">55729000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="c20241031_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember"
      decimals="-3"
      id="Fact_959a8ecee192444581a02ff78a2bb95b"
      unitRef="U001">135736000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="c20241031_IncomeTaxAuthorityAxis_ForeignCountryMember"
      decimals="-3"
      id="Fact_1b41b3d212cd4f0e8a04c6aa0f311a83"
      unitRef="U001">165000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:SummaryOfTaxCreditCarryforwardsTextBlock
      contextRef="c20231101to20241031"
      id="Text_dcc1323b94764337a0bfbee0498bae94">
&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Tax Credit Carryforwards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Amount&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Expiration Period&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Federal research and development&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,042&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_a7515f8d2ef54e5f8c5c9f5031ac64b9"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_ada4c71dc88e4a1481325de16531bfdc"&gt;2044&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;Federal 48D credit&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$ &lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;2,276&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&lt;span style="-sec-ix-hidden:Fact_ce8445dff0d5453f9609997657734e2d"&gt;2043&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_512726a9d52c48fe84be8a862e033b07"&gt;2044&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;State&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,357&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="-sec-ix-hidden:Fact_8a8dcb3a0ef94c4ab0cae95b84da7412"&gt;2025&lt;/span&gt;-&lt;span style="-sec-ix-hidden:Fact_908a2b39d03e4d05baa4ed0f4cf2c141"&gt;2038&lt;/span&gt;&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:SummaryOfTaxCreditCarryforwardsTextBlock>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="c20241031_TaxCreditCarryforwardAxis_ResearchMember"
      decimals="-3"
      id="Fact_12c936c73ae64cdca4d0b42616c51fac"
      unitRef="U001">6042000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="c20241031_TaxCreditCarryforwardAxis_InvestmentCreditMember"
      decimals="-3"
      id="Fact_5c3cbd7985254191addbbfccb97dec0a"
      unitRef="U001">2276000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="c20241031_TaxCreditCarryforwardAxis_StateAndLocalJurisdictionMember"
      decimals="-3"
      id="Fact_e49e6e01456a405aaa0533ebf59190bf"
      unitRef="U001">5357000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:IncomeTaxUncertaintiesPolicy
      contextRef="c20231101to20241031"
      id="Text_52a294549f4144f7a5e0bad1032c4884">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-indent: 18pt; text-transform: none;"&gt;We include unrecognized tax benefits in &lt;span style="font-style: italic;"&gt;Other liabilities&lt;/span&gt;, and we include any applicable interest and penalties related to uncertain tax positions in our income tax provision. &lt;/div&gt;
</us-gaap:IncomeTaxUncertaintiesPolicy>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_7293288648514c0c8a3efb769b0c15f0">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;A reconciliation of the beginning and ending amounts of unrecognized tax benefits is presented below. The amounts in the table
      include settlements of non-U.S. audits.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at beginning of year before interest and penalties&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,332&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,204&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,534&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(Reductions) additions of tax positions in prior years&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;86&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;209&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(355&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Additions based on current year tax positions&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;6,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,361&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,892&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Settlements&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;(835&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(423&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(848&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Lapses of statutes of limitations&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;(30&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(19&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(19&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at end of year before interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;13,692&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,332&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,204&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;1,028&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;576&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;395&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at end of year including interest and penalties&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;14,720&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;8,908&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;5,599&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20231031"
      decimals="-3"
      id="Fact_923e209e6281482193f74730ae959c69"
      unitRef="U001">8332000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20221031"
      decimals="-3"
      id="Fact_e1d2ec0cb5e74c4cab1b5e5dba7d78fe"
      unitRef="U001">5204000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20211031"
      decimals="-3"
      id="Fact_903c9fee799f49b491cca0fe3625bf43"
      unitRef="U001">3534000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_7dda54eacb4d49c9887c827f195827d9"
      unitRef="U001">86000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_1238caed38d94decac942659c6e2a665"
      unitRef="U001">209000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_bdef837b34f84a5396968ed970e7ceb9"
      unitRef="U001">355000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_a2ec260a8e1648818a0ef1e31db16ea1"
      unitRef="U001">6139000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e8cf17d96eef41e592ae9b7a911a28f9"
      unitRef="U001">3361000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_f4a3e8b3e77e4f8a80dca2e3bc6d77c7"
      unitRef="U001">2892000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_c3e06bf5dd064162af2a629e2c87bc8a"
      unitRef="U001">835000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_731f55a007214596b3419715d19bcb03"
      unitRef="U001">423000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_75f8f6193cc7496ea96880cc32b49bca"
      unitRef="U001">848000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_f78282ec3cef4884976d358a06c34b82"
      unitRef="U001">30000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_18f87e296cb9451e89bd78002567308c"
      unitRef="U001">19000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_6935b962f58e4720bcf6ea9f83b27276"
      unitRef="U001">19000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20241031"
      decimals="-3"
      id="Fact_eb08f29bfa754969a3d4cf76516e93bc"
      unitRef="U001">13692000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20231031"
      decimals="-3"
      id="Fact_308d0904a5684557bbee6282dcc3d85e"
      unitRef="U001">8332000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20221031"
      decimals="-3"
      id="Fact_5f06daca1cad401db9dd6ae9aea88d25"
      unitRef="U001">5204000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="c20241031"
      decimals="-3"
      id="Fact_94c0674f92134c82bd10d2f77a756a55"
      unitRef="U001">1028000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="c20231031"
      decimals="-3"
      id="Fact_ccf36d3e21ea41bfa3432ab1b0341edd"
      unitRef="U001">576000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="c20221031"
      decimals="-3"
      id="Fact_37911c7ca6624002bfaf05ba21ce7c52"
      unitRef="U001">395000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties
      contextRef="c20241031"
      decimals="-3"
      id="Fact_11bb272029974d2484a971ee3d5a6e7c"
      unitRef="U001">14720000</plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties>
    <plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties
      contextRef="c20231031"
      decimals="-3"
      id="Fact_53a0b53fd47c46a1a3d5bb57ab4faa66"
      unitRef="U001">8908000</plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties>
    <plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties
      contextRef="c20221031"
      decimals="-3"
      id="Fact_bbf269377d5d4204ad7cbd1bd3389a71"
      unitRef="U001">5599000</plab:UnrecognizedTaxBenefitsIncludingInterestAndPenalties>
    <plab:ScheduleOfUnrecognizedTaxBenefitsTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_4b39f179de6b47dba15899abff2a435e">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;The following table presents additional information
        on our uncertain tax positions, as of the balance sheet dates.&lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Unrecognized tax benefits that, if recognized, would impact the effective tax rate&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;14,720&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;8,908&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 76%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Accrued interest and penalties related to uncertain tax positions&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;1,028&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;576&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</plab:ScheduleOfUnrecognizedTaxBenefitsTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2535c73e8fdf4a7da7c77dd972948a26"
      unitRef="U001">14720000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="c20231031"
      decimals="-3"
      id="Fact_4552c594d4b04e7c88a210e9a9421454"
      unitRef="U001">8908000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="c20241031"
      decimals="-3"
      id="Fact_2d7412674deb4f4abb57a1248fc91205"
      unitRef="U001">1028000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="c20231031"
      decimals="-3"
      id="Fact_0982a5ad2f984d2d8ce31a49b61670d7"
      unitRef="U001">576000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible
      contextRef="c20241031"
      decimals="-5"
      id="Fact_237a14cf53404fe59109233f486b0ba7"
      unitRef="U001">400000</us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible>
    <plab:ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_3506e7cac83f4a4395e4fca041441d7b">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;The table below presents income taxes paid and refunds of income taxes received during the reporting periods.&lt;/span&gt; &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-indent: 18pt; text-transform: none;"&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
        &lt;/span&gt;&lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold; font-variant: normal; text-transform: none;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Income taxes paid&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;62,520&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;70,362&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div&gt;37,770&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div style="text-align: left;"&gt;Income tax refunds received&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;2,519&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;485&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;" valign="bottom"&gt;
              &lt;div&gt;388&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</plab:ScheduleOfIncomeTaxesPaidAndRefundsTableTextBlock>
    <us-gaap:IncomeTaxesPaid
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_0a868cc1eb8e49e781aebed54ffa00f4"
      unitRef="U001">62520000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_cc7d1ce0fdbe440b9fbe58773309c9ca"
      unitRef="U001">70362000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_ff7c39b8bd304d0eaa40d6724a8fac9a"
      unitRef="U001">37770000</us-gaap:IncomeTaxesPaid>
    <us-gaap:ProceedsFromIncomeTaxRefunds
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_b4555f48bf36467dbd5453461fc5917e"
      unitRef="U001">2519000</us-gaap:ProceedsFromIncomeTaxRefunds>
    <us-gaap:ProceedsFromIncomeTaxRefunds
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_5f955577ce564652bef19f91f0907a69"
      unitRef="U001">485000</us-gaap:ProceedsFromIncomeTaxRefunds>
    <us-gaap:ProceedsFromIncomeTaxRefunds
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_07abb26806cd4bd9a5107e4a5311ba58"
      unitRef="U001">388000</us-gaap:ProceedsFromIncomeTaxRefunds>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="c20231101to20241031"
      id="Text_ac8b31ba1031434ab9b417a5b818e71b">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 15 - EARNINGS PER SHARE&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The calculation of basic and diluted earnings per share is presented below.&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;(in thousands, except for per share data)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income attributable to Photronics, Inc. shareholders&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;130,688&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;125,485&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;118,786&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Effect of dilutive securities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Earnings used for diluted earnings per share&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;130,688&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;125,485&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;118,786&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted-average common shares outstanding:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;"&gt;Basic&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,726&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,139&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;60,559&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.15pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Effect of dilutive securities:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -18pt; margin-left: 44.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share-based payment awards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;665&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;616&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Potentially dilutive common shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;665&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;616&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted-average common shares-Diluted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;62,391&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,755&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,189&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Earnings per share:&lt;/span&gt; &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net Income attributable to Photronics shareholders - Basic&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.12&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.05&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.96&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net Income attributable to Photronics shareholders - Diluted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.09&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.03&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.94&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below sets forth the outstanding weighted-average share-based payment awards that were excluded from the calculation of
      diluted earnings per share because their exercise price exceeded the average market value of the common shares for the period or, under application of the treasury stock method, they were otherwise determined to be antidilutive.&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share based payment awards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;371&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;314&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total potentially dilutive shares excluded&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;371&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;314&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_551b862d87f34cf8b6592cbe22ac8217">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The calculation of basic and diluted earnings per share is presented below.&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;(in thousands, except for per share data)&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income attributable to Photronics, Inc. shareholders&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;130,688&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;125,485&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;118,786&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Effect of dilutive securities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Earnings used for diluted earnings per share&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;130,688&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;125,485&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;118,786&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted-average common shares outstanding:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 18pt;"&gt;Basic&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,726&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,139&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;60,559&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 25.15pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Effect of dilutive securities:&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -18pt; margin-left: 44.95pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share-based payment awards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;665&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;616&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#160;Potentially dilutive common shares&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;665&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;616&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted-average common shares-Diluted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;62,391&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,755&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;61,189&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Earnings per share:&lt;/span&gt; &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net Income attributable to Photronics shareholders - Basic&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.12&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.05&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.96&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net Income attributable to Photronics shareholders - Diluted&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.09&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.03&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.94&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_5084cc6c70584f8a9a44d38cc4e15aab"
      unitRef="U001">130688000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_92db5e56a340413daa156bc5f36245d8"
      unitRef="U001">125485000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_b5bef44ef36e4706b51310136b6c6605"
      unitRef="U001">118786000</us-gaap:NetIncomeLoss>
    <us-gaap:DilutiveSecurities
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_0bc8d185e4b74b8a8030430e6bab835e"
      unitRef="U001">0</us-gaap:DilutiveSecurities>
    <us-gaap:DilutiveSecurities
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_999c3d5142d743ea9e6c8adffe67640c"
      unitRef="U001">0</us-gaap:DilutiveSecurities>
    <us-gaap:DilutiveSecurities
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_b908a29629b64d04b81da2f88693bc9f"
      unitRef="U001">0</us-gaap:DilutiveSecurities>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_2c625dbdac5a470d84d87407201a4985"
      unitRef="U001">130688000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_fe56a8ceee834998bb3a22929e9f0095"
      unitRef="U001">125485000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:NetIncomeLossAttributableToParentDiluted
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_3851ac71f54e48798bbb4feb102a75ca"
      unitRef="U001">118786000</us-gaap:NetIncomeLossAttributableToParentDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_5639aed80e4f4cb2aba16dd706b14e49"
      unitRef="U002">61726000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_60aba0fd4ce04e80827872f550ceeef7"
      unitRef="U002">61139000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_083acf81eaee4fe5985153217b0b3fb0"
      unitRef="U002">60559000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_7039baa479524861b261bb985fa2bb9b"
      unitRef="U002">665000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_42c1ade69285433b9ade704fef520ff3"
      unitRef="U002">616000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_7121d933e5bc4d2bb0aae531d5574019"
      unitRef="U002">630000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_084cb98b0a8746d68a1aa594c5fc7ea9"
      unitRef="U002">665000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e32841884a96409c914da660f3c69a33"
      unitRef="U002">616000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_bf1a474899534e8ea61659b0623e43ab"
      unitRef="U002">630000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_dbcb03e249b146108bacc47fca285afa"
      unitRef="U002">62391000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_c13a43f052bd4504936e206e3623357b"
      unitRef="U002">61755000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_01edae7bd66f4f61a7aef0cd3289651b"
      unitRef="U002">61189000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_50f12d77f4714ad5994d89c3776753ec"
      unitRef="U003">2.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20221101to20231031"
      decimals="2"
      id="Fact_938f49c1398b42a09ffeb09f68092974"
      unitRef="U003">2.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20211101to20221031"
      decimals="2"
      id="Fact_eaaaab48f85c4ea0bb8146cd5fcfc863"
      unitRef="U003">1.96</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20231101to20241031"
      decimals="2"
      id="Fact_4f03d2e87658458c944a6988e1eb201e"
      unitRef="U003">2.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20221101to20231031"
      decimals="2"
      id="Fact_45d0eae0ad3c46c8b9f66063120845bb"
      unitRef="U003">2.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20211101to20221031"
      decimals="2"
      id="Fact_96b75983a9f34dfb98fcec733566d08c"
      unitRef="U003">1.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="c20231101to20241031"
      id="Text_07fe16fccc334787bd24e5ddb6634d86">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below sets forth the outstanding weighted-average share-based payment awards that were excluded from the calculation of
      diluted earnings per share because their exercise price exceeded the average market value of the common shares for the period or, under application of the treasury stock method, they were otherwise determined to be antidilutive.&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Share based payment awards&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;371&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;314&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total potentially dilutive shares excluded&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;371&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;136&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;314&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20231101to20241031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="-3"
      id="Fact_b34fd80a45df4b3781f4d09e44e8b20a"
      unitRef="U002">371000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20221101to20231031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="-3"
      id="Fact_15986ccf38a7489187c47177381898b0"
      unitRef="U002">136000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20211101to20221031_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="-3"
      id="Fact_3e64fa30c74a4c288768c97e61941734"
      unitRef="U002">314000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_c56db55e6d6e4b7390cd2903ec48cc6c"
      unitRef="U002">371000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_87cf30b4a548448b9adf726f6f74b82d"
      unitRef="U002">136000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20211101to20221031"
      decimals="-3"
      id="Fact_bc1f6c36903c4e73ba7ffb6a2e81bb33"
      unitRef="U002">314000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_5d0edaac3db44d69b3a1e3bbf1c1822e">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 16 - COMMITMENTS AND CONTINGENCIES&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the Company&#x2019;s unrecognized unconditional purchase obligations, which are mainly payments for the acquisition of property, plant and
        equipment, with a remaining term in excess of one year as of October 31, 2024. The amounts below do not include the Company&#x2019;s
        commitments under the Company&#x2019;s debt and lease arrangements, which are presented in Notes 8 and 11, respectively.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 2px; border-bottom-style: solid;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fiscal Year&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Unrecognized &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Commitments&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,992&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,052&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2027&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2028&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2029&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Thereafter&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;74,046&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;We are subject to various claims that arise in the ordinary course of business. The Company believes that the Company&#x2019;s potential
      liability under such claims, individually and in the aggregate, will not have a material effect on the Company&#x2019;s consolidated financial statements.&#160; As of October 31, 2024, and October 31, 2023, the Company was not involved in environmental
      litigation to which a government was a party.&lt;/div&gt;
</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_d4305349dd784f02925fd388492aa24a">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Presented below are the Company&#x2019;s unrecognized unconditional purchase obligations, which are mainly payments for the acquisition of property, plant and
        equipment, with a remaining term in excess of one year as of October 31, 2024. The amounts below do not include the Company&#x2019;s
        commitments under the Company&#x2019;s debt and lease arrangements, which are presented in Notes 8 and 11, respectively.&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 2px; border-bottom-style: solid;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Fiscal Year&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Unrecognized &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Commitments&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;70,992&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,052&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2027&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2028&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2029&lt;br/&gt;
                &lt;/span&gt; &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; padding-bottom: 2px;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Thereafter&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;74,046&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock>
    <plab:MinimumRemainingTermOfPlantAndEquipment
      contextRef="c20231101to20241031"
      id="Fact_9d60e4c0c078446db1a4222c492d71f2">P1Y</plab:MinimumRemainingTermOfPlantAndEquipment>
    <us-gaap:ContractualObligationDueInNextTwelveMonths
      contextRef="c20241031"
      decimals="-3"
      id="Fact_cb21e0b19632473fad30090e2bcd26ab"
      unitRef="U001">70992000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:ContractualObligationDueInSecondYear
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f6aa6931c54547dca734587a7e926f75"
      unitRef="U001">3052000</us-gaap:ContractualObligationDueInSecondYear>
    <us-gaap:ContractualObligationDueInThirdYear
      contextRef="c20241031"
      decimals="-3"
      id="Fact_65e3caf8b39b44fc81bdc5f20601c9ad"
      unitRef="U001">1000</us-gaap:ContractualObligationDueInThirdYear>
    <us-gaap:ContractualObligationDueInFourthYear
      contextRef="c20241031"
      decimals="-3"
      id="Fact_36712205c7214f58bad020fc70902746"
      unitRef="U001">1000</us-gaap:ContractualObligationDueInFourthYear>
    <us-gaap:ContractualObligationDueInFifthYear
      contextRef="c20241031"
      decimals="-3"
      id="Fact_b3db8a46e9e84439bb68548544ba13fd"
      unitRef="U001">0</us-gaap:ContractualObligationDueInFifthYear>
    <us-gaap:ContractualObligationDueAfterFifthYear
      contextRef="c20241031"
      decimals="-3"
      id="Fact_606bc26c46fa4dcab1fd09482f587494"
      unitRef="U001">0</us-gaap:ContractualObligationDueAfterFifthYear>
    <us-gaap:ContractualObligation
      contextRef="c20241031"
      decimals="-3"
      id="Fact_f5abb9af734f4c2f8821b9b30e63aa34"
      unitRef="U001">74046000</us-gaap:ContractualObligation>
    <us-gaap:OtherComprehensiveIncomeNoncontrollingInterestTextBlock
      contextRef="c20231101to20241031"
      id="Text_767f2956e7754ae78bf1d4a402d9e81a">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 17 - CHANGES IN ACCUMULATED OTHER COMPREHENSIVE (LOSS) INCOME BY COMPONENT&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables set forth the&#160;changes in the Company&#x2019;s accumulated other comprehensive (loss) income by component (net of tax
      of $0)&#160;for the years ended October 31, 2024, and October 31, 2023.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended October 31,
              2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Foreign Currency&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Translation&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Adjustments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Other&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,044&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(690&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,734&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(81&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,549&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive (loss) income attributable to noncontrolling interests&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(6,173&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(6,134&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(85,587&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(732&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(86,319&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; font-weight: bold; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; font-weight: bold; border-bottom: #000000 solid 2px;" valign="bottom"&gt;Year Ended October 31, 2023&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-weight: bold; text-align: center;"&gt;Foreign Currency&lt;br/&gt;
            &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Translation&lt;br/&gt;
              &lt;/span&gt;&lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Adjustments&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Other&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Total&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(97,790&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(666&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(98,456&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,615&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(3&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,612&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss) attributable to noncontrolling interests&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,131&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(21&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,110&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,044&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(690&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,734&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:OtherComprehensiveIncomeNoncontrollingInterestTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_2814da2b64654447808bce34534ace01">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables set forth the&#160;changes in the Company&#x2019;s accumulated other comprehensive (loss) income by component (net of tax
      of $0)&#160;for the years ended October 31, 2024, and October 31, 2023.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Year Ended October 31,
              2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Foreign Currency&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Translation&lt;/div&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Adjustments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Other&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,044&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(690&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,734&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,630&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(81&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,549&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive (loss) income attributable to noncontrolling interests&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(6,173&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;39&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(6,134&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2024&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(85,587&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(732&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(86,319&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; font-weight: bold; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; font-weight: bold; border-bottom: #000000 solid 2px;" valign="bottom"&gt;Year Ended October 31, 2023&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="font-weight: bold; text-align: center;"&gt;Foreign Currency&lt;br/&gt;
            &lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Translation&lt;br/&gt;
              &lt;/span&gt;&lt;/div&gt;
            &lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Adjustments&lt;/span&gt;&lt;br/&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Other&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Total&lt;/span&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(97,790&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(666&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(98,456&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,615&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(3&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;5,612&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Other comprehensive income (loss) attributable to noncontrolling interests&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,131&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(21&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;4,110&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Balance at October 31, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,044&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(690&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;(88,734&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="c20221101to20231031"
      decimals="-3"
      id="Fact_e9e7cdeda17440c6aba1d2d5febbf5f4"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:OtherComprehensiveIncomeLossTax
      contextRef="c20231101to20241031"
      decimals="-3"
      id="Fact_253fb9def1ad4025a742e8dc5fbff12a"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossTax>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="Fact_794b0cf24998408eb2b3b54f686bcdc9"
      unitRef="U001">-88044000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"
      decimals="-3"
      id="Fact_16a5ecb782d44f66bb6b3ade146d422a"
      unitRef="U001">-690000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_30b2288106fd4bfbab9e27ba7cb3d8e0"
      unitRef="U001">-88734000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_451a527689c947cea3b0a4e204484705"
      unitRef="U001">8630000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember"
      decimals="-3"
      id="Fact_417f8a92d3bc4cd8ad4f70b794556c98"
      unitRef="U001">-81000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_12080e297ce84ea7af5298e332bcc431"
      unitRef="U001">8549000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_d772b6ff9eba46d2b98990ddf63ca7bb"
      unitRef="U001">6173000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember"
      decimals="-3"
      id="Fact_3d504637be08499cb1af143a8369c35c"
      unitRef="U001">-39000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20231101to20241031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_e0afe13001a14bd08ec1b26e7734231d"
      unitRef="U001">6134000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquity
      contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="Fact_4d034eea21ed4ed4b63fa6585af9b45e"
      unitRef="U001">-85587000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"
      decimals="-3"
      id="Fact_d47f47a34ddb4e199e2f2a79d0c92ff3"
      unitRef="U001">-732000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_f474e94b90274f1d8906436192a38225"
      unitRef="U001">-86319000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="Fact_a2ea2cc8ae3b4c51aa6831d488d56fe2"
      unitRef="U001">-97790000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"
      decimals="-3"
      id="Fact_0563f7cf9c1545928135236f082cc45f"
      unitRef="U001">-666000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_5e66c2169d924aa1820d4f1860893c26"
      unitRef="U001">-98456000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentIncludingPortionAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_7e354bfb2d78495f8fff001f37625d5a"
      unitRef="U001">5615000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeIncludingPortionAttributableToNoncontrollingInterestOtherMember"
      decimals="-3"
      id="Fact_90539c9e9a794c51930bb1333eb47845"
      unitRef="U001">-3000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AociIncludingPortionAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_e9913f6bed0d47049a0cd22f3f55c782"
      unitRef="U001">5612000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedForeignCurrencyAdjustmentAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_22b6abca3e3946758c2893936fb0c5b4"
      unitRef="U001">-4131000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeAttributableToNoncontrollingInterestOtherMember"
      decimals="-3"
      id="Fact_78edab7bef894c76b95a78efe577b15a"
      unitRef="U001">21000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest
      contextRef="c20221101to20231031_StatementEquityComponentsAxis_AociAttributableToNoncontrollingInterestMember"
      decimals="-3"
      id="Fact_a45e533f47724121856cf2f4c122e9a3"
      unitRef="U001">-4110000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedTranslationAdjustmentMember"
      decimals="-3"
      id="Fact_546516405021450ba190f18566be02f0"
      unitRef="U001">-88044000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeOtherMember"
      decimals="-3"
      id="Fact_3062deafed0c4a79af41bd98fdb7253e"
      unitRef="U001">-690000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231031_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_5ea5a1b958764c1a8e8ed91073397bb0"
      unitRef="U001">-88734000</us-gaap:StockholdersEquity>
    <us-gaap:ConcentrationRiskDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_d8c5564e21e6460ca38fd17a49016957">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 18 - RISKS AND CONCENTRATIONS&lt;br/&gt;
    &lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Financial instruments that potentially subject the Company to credit risk principally consist of trade accounts receivable and
      short-term cash investments. The Company sells the Company&#x2019;s products primarily to semiconductor and FPD manufacturers in Asia, North America, and Europe. The Company believes that the concentration of credit risk in the Company&#x2019;s trade receivables
      is substantially mitigated by the Company&#x2019;s ongoing credit evaluation process and relatively short collection terms. The Company does not generally require collateral from customers. The Company establishes an allowance for credit losses based upon
      factors surrounding the credit risk of specific customers, historical trends, and other information.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Our cash and cash equivalents are deposited in several financial institutions, including institutions located within all of the
      countries in which the Company manufactures photomasks. Portions of deposits in some of these institutions may exceed the amount of insurance available for such deposits at these institutions. As these deposits are generally redeemable upon demand
      and are held by high quality, reputable institutions, the Company considers them to bear minimal credit risk. The Company further mitigates credit risks related to the Company&#x2019;s cash and cash equivalents by spreading such risk among a number of
      institutions.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The following table presents the percentages of the
        Company&#x2019;s net accounts receivable attributable to customers that accounted for more than ten percent of the total balance as of the balance sheet dates.&lt;/span&gt; &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer A&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;19.2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;21&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer B&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;14.6&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; The following table presents the percentages of the Company&#x2019;s revenue attributable to customers that accounted for more than ten
      percent of the total revenue during the reporting periods. &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Year Ended&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer A&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;15&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;14&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;15&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer B&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;11&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;Customer C&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;9&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;13&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;5&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;We operate as a single reporting segment as a manufacturer of photomasks, which are high precision quartz or glass plates containing
      microscopic images of electronic circuits for use in the fabrication of ICs and FPDs. &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of the balance sheet dates, the Company&#x2019;s long-lived assets and net assets were, by geographic area, as presented below.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Long-lived &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Long-lived &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;China&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;256,072&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;379,460&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;249,357&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;317,409&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Europe and Other&lt;/div&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,010&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(420&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,294&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,175&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;144,634&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;217,890&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;140,733&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;188,712&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Korea&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;123,631&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;315,597&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;119,438&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;281,941&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Taiwan&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;213,910&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;568,232&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;199,313&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;489,722&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;745,257&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,480,759&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;716,135&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,275,609&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember"
      id="Text_73456f3dee6e4b6f96bd2b68bcedbcb0">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-indent: 18pt;"&gt;&lt;span style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; text-transform: none;"&gt;The following table presents the percentages of the
        Company&#x2019;s net accounts receivable attributable to customers that accounted for more than ten percent of the total balance as of the balance sheet dates.&lt;/span&gt; &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer A&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;19.2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;21&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 76%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer B&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;14.6&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"
      decimals="3"
      id="Fact_6e0583d9208f4ac7842f45a237874f85"
      unitRef="U005">0.192</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"
      decimals="2"
      id="Fact_32c78322d75647e7a64a1ced15c48b68"
      unitRef="U005">0.21</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"
      decimals="3"
      id="Fact_045f204ec346428cb99df21272fc88b0"
      unitRef="U005">0.146</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"
      decimals="2"
      id="Fact_5508fb3dfd324a32a2782c142148171a"
      unitRef="U005">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember"
      id="Text_8473fcf7ffc94168820827444ce6897e">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; The following table presents the percentages of the Company&#x2019;s revenue attributable to customers that accounted for more than ten
      percent of the total revenue during the reporting periods. &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;
      &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

      &lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: center; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" rowspan="1" style="vertical-align: top; text-align: center; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&lt;span style="font-weight: bold;"&gt;Year Ended&lt;/span&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="text-align: left; vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31,&lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer A&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;15&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;14&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;15&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer B&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;10&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;11&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;Customer C&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;9&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;13&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;5&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;%&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"
      decimals="2"
      id="Fact_514f36133c654a5da7ad6b6a2984132f"
      unitRef="U005">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"
      decimals="2"
      id="Fact_7a09939ea1b7458eb674f98e6f4ef04c"
      unitRef="U005">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerAMember"
      decimals="2"
      id="Fact_e09c35243f044c75af1d10c66b4258e6"
      unitRef="U005">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"
      decimals="2"
      id="Fact_f24f67b0f61246f89f841c888c18a12b"
      unitRef="U005">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"
      decimals="2"
      id="Fact_e9ae70a929784141bf11ef3510270a0d"
      unitRef="U005">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerBMember"
      decimals="2"
      id="Fact_fd792c9433ed4475abe4b881bf2b3cb4"
      unitRef="U005">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20231101to20241031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"
      decimals="2"
      id="Fact_6d91743d94be4de78ae8d1182c5f450b"
      unitRef="U005">0.09</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20221101to20231031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"
      decimals="2"
      id="Fact_2185aab3f1f74b00a77c33c39c658b4e"
      unitRef="U005">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20211101to20221031_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_CustomerCMember"
      decimals="2"
      id="Fact_cfa79419cc2946038690a2bc2972475c"
      unitRef="U005">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock
      contextRef="c20231101to20241031"
      id="Text_70c9b77d36dd49d38b76f3e9e7041cfd">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of the balance sheet dates, the Company&#x2019;s long-lived assets and net assets were, by geographic area, as presented below.&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" rowspan="1" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Long-lived &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Long-lived &lt;/div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net Assets&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;China&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;256,072&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;379,460&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;249,357&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;317,409&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Europe and Other&lt;/div&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,010&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(420&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;7,294&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,175&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;144,634&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;217,890&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;140,733&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;188,712&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Korea&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;123,631&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;315,597&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;119,438&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;281,941&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Taiwan&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;213,910&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;568,232&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;199,313&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;489,722&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;745,257&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,480,759&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;716,135&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,275,609&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_b7178689c4dc408e9e380ebecf7affe2"
      unitRef="U001">256072000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_1d5230c17f564a93bde7b99fe7047d00"
      unitRef="U001">379460000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_6a46f87805b54fb7bc7a90f261486f0f"
      unitRef="U001">249357000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031_StatementGeographicalAxis_CN"
      decimals="-3"
      id="Fact_d12b1864cf454fe5834bb157c7fe561c"
      unitRef="U001">317409000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031_StatementGeographicalAxis_EuropeAndOtherMember"
      decimals="-3"
      id="Fact_59232704d5254385be73a50b2a75e1e2"
      unitRef="U001">7010000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031_StatementGeographicalAxis_EuropeAndOtherMember"
      decimals="-3"
      id="Fact_f12f4a2968dd4f57a6d68d09152d9f67"
      unitRef="U001">-420000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031_StatementGeographicalAxis_EuropeAndOtherMember"
      decimals="-3"
      id="Fact_a9b6da4a18014bdd8978ebf471969825"
      unitRef="U001">7294000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031_StatementGeographicalAxis_EuropeAndOtherMember"
      decimals="-3"
      id="Fact_ea18ac72044447c8a7ac0c90f2045fe7"
      unitRef="U001">-2175000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_e4683d5d14544f5184d1b4a6cb26be7d"
      unitRef="U001">144634000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_78a860463a3c4aafbfecaf12d832f414"
      unitRef="U001">217890000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_b28a1135329e4b0ba229424ca3001516"
      unitRef="U001">140733000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_7d8298a5c83e49488ad381157ed87703"
      unitRef="U001">188712000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_9bf21801f2c84f9c9adaae7ce3136872"
      unitRef="U001">123631000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_61e801b49a4f4d09a1a9d572c01eae52"
      unitRef="U001">315597000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_720ab915a6d546aea5438c4220b3e87d"
      unitRef="U001">119438000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031_StatementGeographicalAxis_KR"
      decimals="-3"
      id="Fact_a7b9e9fcf78b4d22a892cb077fb3ba49"
      unitRef="U001">281941000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_2fee1460be1a4a1db273f0a35361518c"
      unitRef="U001">213910000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_4728063295704e0c8e35abcd620f9674"
      unitRef="U001">568232000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_c2c6ba18d20b4f0db304610a1a37e809"
      unitRef="U001">199313000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031_StatementGeographicalAxis_TW"
      decimals="-3"
      id="Fact_065c94ef7e544f66bb3ba8f77bc8e611"
      unitRef="U001">489722000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20241031"
      decimals="-3"
      id="Fact_10b2757182ce42609b21078938275c9d"
      unitRef="U001">745257000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20241031"
      decimals="-3"
      id="Fact_9ab9af417ce44635af5618f40fc66d4c"
      unitRef="U001">1480759000</us-gaap:AssetsNet>
    <us-gaap:NoncurrentAssets
      contextRef="c20231031"
      decimals="-3"
      id="Fact_799a4abb081e4d718c5f5a70363b9a70"
      unitRef="U001">716135000</us-gaap:NoncurrentAssets>
    <us-gaap:AssetsNet
      contextRef="c20231031"
      decimals="-3"
      id="Fact_d63fdd9470a8499e87afe8124628740a"
      unitRef="U001">1275609000</us-gaap:AssetsNet>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="c20231101to20241031"
      id="Text_b336fdf7e776469b8c68e316843a0b5b">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 19 - RELATED PARTY TRANSACTIONS&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Our chief executive officer is related to an individual in a position of authority at one of the Company&#x2019;s largest customers. The
      Company recorded revenue from this customer of $127.0 million, $126.5 million and $119.0 million, in 2024, 2023, and 2022,
      respectively. As of October 31, 2024, and October 31, 2023, the Company had accounts receivable of $38.8 million and $41.5 million, respectively, from this customer.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Company believes that the terms of the transaction described above was negotiated at arm&#x2019;s length and were no less favorable to
      the Company than terms the Company could have obtained from unrelated third parties.&lt;br/&gt;
    &lt;/div&gt;
</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20231101to20241031_MajorCustomersAxis_MajorCustomer1Member"
      decimals="-5"
      id="Fact_7e7071b3c6f041489770dbc3b47881f5"
      unitRef="U001">127000000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20221101to20231031_MajorCustomersAxis_MajorCustomer1Member"
      decimals="-5"
      id="Fact_ce25ef03e72b4eb387c9556db731f52b"
      unitRef="U001">126500000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211101to20221031_MajorCustomersAxis_MajorCustomer1Member"
      decimals="-5"
      id="Fact_2c62a013658947af996143399608cc6a"
      unitRef="U001">119000000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20241031_MajorCustomersAxis_MajorCustomer1Member"
      decimals="-5"
      id="Fact_a87d3b918bf049f6a007b7c8f68d36b9"
      unitRef="U001">38800000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20231031_MajorCustomersAxis_MajorCustomer1Member"
      decimals="-5"
      id="Fact_22d5fab991514476a1e9f8fac8faf093"
      unitRef="U001">41500000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="c20231101to20241031"
      id="Text_d145303bc68144ad8f7762dc483566d8">
&lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 20 - FAIR VALUE MEASUREMENTS&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The accounting framework for determining fair value includes a hierarchy for ranking the quality and reliability of the information
      used to measure fair value, which enables the reader of the financial statements to assess the inputs used to develop those measurements. The fair value hierarchy consists of three tiers as follows:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Level 1- These are investments where values are based on unadjusted quoted prices for identical assets in an active market the Company has the ability to access.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Level 2- These are investments where values are based on quoted market prices that are not active or model derived valuations in which all significant inputs are
        observable in active markets.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Level 3- These are investments where values are derived from techniques in which one or more significant inputs are unobservable.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; The following are the major categories of assets measured at fair value on a recurring basis using quoted prices in active markets for identical assets (Level 1),
        significant other observable inputs (Level 2) and significant unobservable inputs (Level 3):&lt;/span&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
      &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; width: 36%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; October 31, 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 36%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 3&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 3&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt; text-indent: -9pt;"&gt;U.S. Government Securities &lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;12,915&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;12,915&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 36%;" valign="bottom"&gt;
              &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;Time deposits&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,184&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,184&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Money market funds &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;19,187&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;19,187&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;42,184&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;78,506&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;32,102&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;32,102&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="c20231101to20241031"
      id="Text_47e110b317724575bc6fd5af26bd3214">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;The accounting framework for determining fair value includes a hierarchy for ranking the quality and reliability of the information
      used to measure fair value, which enables the reader of the financial statements to assess the inputs used to develop those measurements. The fair value hierarchy consists of three tiers as follows:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Level 1- These are investments where values are based on unadjusted quoted prices for identical assets in an active market the Company has the ability to access.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Level 2- These are investments where values are based on quoted market prices that are not active or model derived valuations in which all significant inputs are
        observable in active markets.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Level 3- These are investments where values are derived from techniques in which one or more significant inputs are unobservable.&lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;
</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock
      contextRef="c20231101to20241031"
      id="Text_f36f9f8a7ac347a78587cb836cde9f75">
&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; The following are the major categories of assets measured at fair value on a recurring basis using quoted prices in active markets for identical assets (Level 1),
        significant other observable inputs (Level 2) and significant unobservable inputs (Level 3):&lt;/span&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;br/&gt;
      &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;
      &lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: middle; padding-bottom: 2px; width: 36%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; October 31, 2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;October 31, 2023&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 36%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 3&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 1&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 2&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Level 3&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: middle; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
              &lt;div style="margin-left: 9pt; text-indent: -9pt;"&gt;U.S. Government Securities &lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;12,915&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;12,915&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: middle; width: 36%;" valign="bottom"&gt;
              &lt;div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-indent: -9pt; margin-left: 9pt;"&gt;Time deposits&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,184&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;42,184&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 5%;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Money market funds &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;19,187&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;19,187&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: middle; width: 36%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left;"&gt;Total&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;36,322&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;42,184&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;78,506&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;32,102&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;-&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 5%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;32,102&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
       &lt;/div&gt;
</us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_795ac4a74d314581a4f04cd45657310d"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_9d2c9ce6e2f148e0b9a096d0ef90c483"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_8b9116f7efdb4364aa6d051749a843c3"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_59e1c2544407472087bc2a9532dea929"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_6ea3b993f00c4fa785a1c75fca81768f"
      unitRef="U001">12915000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_21f9a09170974ab3a888245173a1aa1a"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_7e249b0dc36741c5be111d251a4cc751"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember_FinancialInstrumentAxis_USTreasuryAndGovernmentMember"
      decimals="-3"
      id="Fact_f6932d2d12674762b269ce9bebdfcdea"
      unitRef="U001">12915000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_7a6ee77b933d4c0a992d00610dc71b5c"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_a714a40ac0e747b59b27cdd96e938efc"
      unitRef="U001">42184000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_fc9a752ec5ef41afae0adada5e45914d"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_5387f230c4cd4930b9cebe4ac552a1c4"
      unitRef="U001">42184000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_63469b69f1a34240818580258fca3f67"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_f3300d94876d41ff945cafab52422f10"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_7e7e8e4d1c7e4554bed7da36735aa9b0"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_BankTimeDepositsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_b32f181232f74b6db622d3ef2c548ca0"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_fcbca476f7e043e79d48e935b76b727e"
      unitRef="U001">36322000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_a84c2d6015bb4cf587955e0fe513634b"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_c43e86b75df9498596d81f5503299099"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_e7576c43afab42b992c2adfab7ba8078"
      unitRef="U001">36322000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_956d6c1f189940139826b2f363f00d22"
      unitRef="U001">19187000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_a3519d15be6148ba98a48d4f65cee692"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_bc6c952f07f44f119d10bba96c364989"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_CashAndCashEquivalentsAxis_MoneyMarketFundsMember_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_ba0df7add60b4f72851691050616815f"
      unitRef="U001">19187000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_e74f24c9b12c480e8095b81c5d8b0883"
      unitRef="U001">36322000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_b350dc5886324397a32baf29ed301db1"
      unitRef="U001">42184000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_90cbfe39aa974aed906eafa6540e3c3a"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20241031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_e6a6145afda140618734f74071897721"
      unitRef="U001">78506000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel1Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_c7a02a749a8548bcb115fef3fe27162a"
      unitRef="U001">32102000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel2Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_e1788bccf15843e386c0bcea84024a3b"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByFairValueHierarchyLevelAxis_FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_2f21d99ff96944279df21f5cd22ed6dd"
      unitRef="U001">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="c20231031_FairValueByMeasurementFrequencyAxis_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="Fact_a875c4b94542422a933daa341d26cd0f"
      unitRef="U001">32102000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:TreasuryStockTextBlock
      contextRef="c20231101to20241031"
      id="Text_1b020527e14340f99f40e72d8a1588f0">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;NOTE 21 - SHARE REPURCHASE PROGRAMS&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;In September 2020, the Company&#x2019;s Board of Directors authorized the repurchase of up to $100 million of its common stock,&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; pursuant to a repurchase plan under Rule 10b5-1 of the Securities Act.&lt;/span&gt; The repurchase authorization by the Board of Directors has no expiration date, does not obligate us to acquire any
        common stock, and is subject to market conditions. &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; Share repurchases under this authorization commenced&lt;/span&gt; on September 16, 2020. &lt;/span&gt;&lt;/span&gt;The most recent 10b5-1 plan expired on September 15, 2022, and has not been renewed.&lt;/span&gt; &lt;/span&gt;In 2022, we repurchased 0.2
        million shares at a cost of $2.5 million (an average of $13.43 per share) and, since the program&#x2019;s inception, we have repurchased 5.8 million shares at a cost
        of $68.3 million (an average of $11.70
        per share). All shares repurchased under the program have been retired&lt;/span&gt; prior to the end of the fiscal year in which they were purchased. &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;On August 28, 2024, the Board of Directors authorized an increase to the Company&#x2019;s existing share repurchase program from the
        remaining $&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;31.7&lt;/span&gt; million up to $100 million
        under the Board of Director authorization. In 2024, we did not repurchase any further shares as part of this program.&lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below presents information on the repurchase programs for the three most recent fiscal years&lt;span style="font-family: 'Times New Roman';"&gt;.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-family: 'Times New Roman';"&gt;2024&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;2023&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;2022&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Number of shares repurchased&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;187&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cost of shares repurchased&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,522&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Average price paid per share&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13.43&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:TreasuryStockTextBlock>
    <srt:StockRepurchaseProgramAuthorizedAmount1
      contextRef="c20200930_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"
      decimals="-6"
      id="Fact_0b78d2da22254bda815a2623ce768328"
      unitRef="U001">100000000</srt:StockRepurchaseProgramAuthorizedAmount1>
    <plab:StockRepurchaseProgramCommencementDate
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"
      id="Fact_dca8b73c390c47bf9b0fa57ff02a6c61">2020-09-16</plab:StockRepurchaseProgramCommencementDate>
    <srt:StockRepurchaseProgramExpirationDate
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"
      id="Fact_112bad651a9a4872a10cc906e6ecd72c">2022-09-15</srt:StockRepurchaseProgramExpirationDate>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-5"
      id="Fact_1da042b209f44a3c9a348f5b759d01b3"
      unitRef="U002">200000</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-5"
      id="Fact_9d3ee4953e0e40849617ae2e6016a43e"
      unitRef="U001">2500000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="2"
      id="Fact_cfff9e3f8bef4a189e9ed89d4e85e71e"
      unitRef="U003">13.43</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-5"
      id="Fact_aba49fe316fc475fae90a84dfdb7c190"
      unitRef="U002">5800000</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-5"
      id="Fact_9fdde8c19a8f40c2a6ce8885413c3855"
      unitRef="U001">68300000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20200901to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="2"
      id="Fact_8a62840c222a44ec992fea36adca68cc"
      unitRef="U003">11.7</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="c20241031_ShareRepurchaseProgramAxis_September2020AnnouncedProgramMember"
      decimals="-5"
      id="Fact_7e548ea9a1a54546aec036a3689504e6"
      unitRef="U001">31700000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <srt:StockRepurchaseProgramAuthorizedAmount1
      contextRef="c20240828_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-6"
      id="Fact_d4b2a9b1b6ed4d388f826b01b5e07b31"
      unitRef="U001">100000000</srt:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-6"
      id="Fact_d9b65b63313742849df72efd1893d029"
      unitRef="U002">0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:ScheduleOfTreasuryStockByClassTextBlock
      contextRef="c20231101to20241031"
      id="Text_0d7ba68a067648f68d4cb0b796536c0a">
&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;
    &lt;/div&gt;

&lt;div style="display:none;"&gt;&lt;br/&gt;&lt;/div&gt;
&lt;div style="text-align: left; text-indent: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The table below presents information on the repurchase programs for the three most recent fiscal years&lt;span style="font-family: 'Times New Roman';"&gt;.&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: top; padding-bottom: 2px;" valign="bottom"&gt;&lt;br/&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt; &lt;span style="font-family: 'Times New Roman';"&gt;2024&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;2023&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;2022&lt;br/&gt;
              &lt;/span&gt; &lt;/div&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Purchases&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Number of shares repurchased&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;187&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Cost of shares repurchased&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,522&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: top; width: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Average price paid per share&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;-&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman';" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;13.43&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-family: 'Times New Roman'; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfTreasuryStockByClassTextBlock>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_135ebbd4190844378a4d591a9955c4c9"
      unitRef="U002">0</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_fa233b8a3ed141dbb2dbe094770e09d4"
      unitRef="U002">0</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockSharesRetired
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_45c6e06fab134569a9b9005f723759b3"
      unitRef="U002">187000</us-gaap:TreasuryStockSharesRetired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_caf6797242e041c8a606aab7c5604c50"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_5309100306594ce69cf5c37f716b6600"
      unitRef="U001">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="-3"
      id="Fact_3e512fee42ce455ca889edb82c73df5b"
      unitRef="U001">2522000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20231101to20241031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="0"
      id="Fact_601d8638ab7e486c9cb740dcc3f0a423"
      unitRef="U003">0</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20221101to20231031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="0"
      id="Fact_a38bf994afa94db7a14233c25e54b0b3"
      unitRef="U003">0</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20211101to20221031_ShareRepurchaseProgramAxis_ShareRepurchaseProgramsMember"
      decimals="2"
      id="Fact_bcd45494663745dbb48a1228cde776ef"
      unitRef="U003">13.43</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="c20240729to20241031"
      id="Fact_ccce06ac74c1407886953391aeaacfc4">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrTrmntdFlag
      contextRef="c20240729to20241031"
      id="Fact_b237309c73bc4a75831998ced5469996">false</ecd:NonRule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrAdoptedFlag
      contextRef="c20240729to20241031"
      id="Fact_a0ce60854fcf482c9aff910105c904ca">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag
      contextRef="c20240729to20241031"
      id="Fact_79d7be6f0a3a4c0f897e74b0d8913a76">false</ecd:Rule10b51ArrTrmntdFlag>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#Fact_b6345882ec6e4416bf5caec90e37cb0e"
          xlink:label="Fact_b6345882ec6e4416bf5caec90e37cb0e"
          xlink:type="locator"/>
        <link:footnote id="Foot_c1f2496a68c84bbb832393ee9845363b" xlink:label="Foot_c1f2496a68c84bbb832393ee9845363b" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">During the year ended October 31, 2024, upon the departure of two executives
        from the Company and in accordance with the terms of their separation agreements, previously granted time-vesting restricted stock awards accelerated vesting. The Company accounted for the effects of the accelerated vesting of these stock awards as
        a&#160;modification, and recognized $1.2 million of incremental stock-based compensation for the acceleration of restricted stock awards,
        within selling, general and administrative expenses on the Consolidated Statements of Income for the year ended October 31, 2024.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_b6345882ec6e4416bf5caec90e37cb0e"
          xlink:to="Foot_c1f2496a68c84bbb832393ee9845363b"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_26e56986bbb7429da0abfdf7e16023f6"
          xlink:label="Fact_26e56986bbb7429da0abfdf7e16023f6"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_26e56986bbb7429da0abfdf7e16023f6"
          xlink:to="Foot_c1f2496a68c84bbb832393ee9845363b"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_1247915d6df5498893078c153721d5bc"
          xlink:label="Fact_1247915d6df5498893078c153721d5bc"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_1247915d6df5498893078c153721d5bc"
          xlink:to="Foot_c1f2496a68c84bbb832393ee9845363b"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_42988dd9d64c4d60973a5a2c1243f674"
          xlink:label="Fact_42988dd9d64c4d60973a5a2c1243f674"
          xlink:type="locator"/>
        <link:footnote id="Foot_0174683df2a3474f86a5d3d29d6bc184" xlink:label="Foot_0174683df2a3474f86a5d3d29d6bc184" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Matured during 2024</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_42988dd9d64c4d60973a5a2c1243f674"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_b43febad08ae4b4b986cc014d9b85d9d"
          xlink:label="Fact_b43febad08ae4b4b986cc014d9b85d9d"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_b43febad08ae4b4b986cc014d9b85d9d"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_a5b6b365c7df4dd8b16cffe864a3cff2"
          xlink:label="Fact_a5b6b365c7df4dd8b16cffe864a3cff2"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_a5b6b365c7df4dd8b16cffe864a3cff2"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_ba63127f9d614ec28d81775a02acc680"
          xlink:label="Fact_ba63127f9d614ec28d81775a02acc680"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_ba63127f9d614ec28d81775a02acc680"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_a1e0b50b0c684fdd8e637f7d41980f66"
          xlink:label="Fact_a1e0b50b0c684fdd8e637f7d41980f66"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_a1e0b50b0c684fdd8e637f7d41980f66"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_fd69bfb6cfbd446c973089a5001d8511"
          xlink:label="Fact_fd69bfb6cfbd446c973089a5001d8511"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_fd69bfb6cfbd446c973089a5001d8511"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_2b0f7ff68d6f4359bd6720e33f04a097"
          xlink:label="Fact_2b0f7ff68d6f4359bd6720e33f04a097"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_2b0f7ff68d6f4359bd6720e33f04a097"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_362a6ee1bf6f42a7a72518d67cadb9f7"
          xlink:label="Fact_362a6ee1bf6f42a7a72518d67cadb9f7"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_362a6ee1bf6f42a7a72518d67cadb9f7"
          xlink:to="Foot_0174683df2a3474f86a5d3d29d6bc184"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_7589dd8b6d604afeb7580519af0b90dd"
          xlink:label="Fact_7589dd8b6d604afeb7580519af0b90dd"
          xlink:type="locator"/>
        <link:footnote id="Foot_82f98204b90545f9a2190cdf977c581e" xlink:label="Foot_82f98204b90545f9a2190cdf977c581e" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">The Company expects to receive refundable federal investment tax
                credits of $5 million through CHIPS Act in connection with the Company&#x2019;s ongoing expansion projects.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_7589dd8b6d604afeb7580519af0b90dd"
          xlink:to="Foot_82f98204b90545f9a2190cdf977c581e"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_50ad7cbf76a84c49b0bd53e1c9116272"
          xlink:label="Fact_50ad7cbf76a84c49b0bd53e1c9116272"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_50ad7cbf76a84c49b0bd53e1c9116272"
          xlink:to="Foot_82f98204b90545f9a2190cdf977c581e"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2"
          xlink:label="Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2"
          xlink:type="locator"/>
        <link:footnote id="Foot_9b6974bf9d974ee7b81365972f002e9c" xlink:label="Foot_9b6974bf9d974ee7b81365972f002e9c" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Represents the
                        carrying amount at the balance sheet date of the related ROU assets, in which the lessors have secured interests.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_8f7b9f4f197b4188a9cdfcdb7a1af7b2"
          xlink:to="Foot_9b6974bf9d974ee7b81365972f002e9c"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b"
          xlink:label="Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_ce0f25685c3e4288b6a1ac0c5ef2a84b"
          xlink:to="Foot_9b6974bf9d974ee7b81365972f002e9c"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_e6627c80a6894038a54be755a3225811"
          xlink:label="Fact_e6627c80a6894038a54be755a3225811"
          xlink:type="locator"/>
        <link:footnote id="Foot_d8a533a5ae26463280e109aabb6faf35" xlink:label="Foot_d8a533a5ae26463280e109aabb6faf35" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">This table disaggregates revenue by the location in which it was earned.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_e6627c80a6894038a54be755a3225811"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_4dce7369a28845e68c321739a577a851"
          xlink:label="Fact_4dce7369a28845e68c321739a577a851"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_4dce7369a28845e68c321739a577a851"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_1b42ed89ce72467e9f24f757bec11a5d"
          xlink:label="Fact_1b42ed89ce72467e9f24f757bec11a5d"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_1b42ed89ce72467e9f24f757bec11a5d"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_8ff2838ee6dc4512aa06ec699c769476"
          xlink:label="Fact_8ff2838ee6dc4512aa06ec699c769476"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_8ff2838ee6dc4512aa06ec699c769476"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_35854d804b334b9c9b3eb0b6e0ac2c89"
          xlink:label="Fact_35854d804b334b9c9b3eb0b6e0ac2c89"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_35854d804b334b9c9b3eb0b6e0ac2c89"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_8edef475eca146fea656f3ac6ecb40b6"
          xlink:label="Fact_8edef475eca146fea656f3ac6ecb40b6"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_8edef475eca146fea656f3ac6ecb40b6"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_0f49dbc742bf4724b0c04563d285b898"
          xlink:label="Fact_0f49dbc742bf4724b0c04563d285b898"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_0f49dbc742bf4724b0c04563d285b898"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_bab3969385964f59bb9d465daaa52cd7"
          xlink:label="Fact_bab3969385964f59bb9d465daaa52cd7"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_bab3969385964f59bb9d465daaa52cd7"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_a39ab698dda246128a7fea52caae3412"
          xlink:label="Fact_a39ab698dda246128a7fea52caae3412"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_a39ab698dda246128a7fea52caae3412"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_63df0cc6efd5410e80c9e935cb3bde36"
          xlink:label="Fact_63df0cc6efd5410e80c9e935cb3bde36"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_63df0cc6efd5410e80c9e935cb3bde36"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_088349b967de4f81b8ef3a709a736cb1"
          xlink:label="Fact_088349b967de4f81b8ef3a709a736cb1"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_088349b967de4f81b8ef3a709a736cb1"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_338e3ab939bd45cb990cb793b7134ab0"
          xlink:label="Fact_338e3ab939bd45cb990cb793b7134ab0"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_338e3ab939bd45cb990cb793b7134ab0"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_6542a345986a4ee3b10e2ebc866aff08"
          xlink:label="Fact_6542a345986a4ee3b10e2ebc866aff08"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_6542a345986a4ee3b10e2ebc866aff08"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_2f1a9c57ed5f43259e33217e21455068"
          xlink:label="Fact_2f1a9c57ed5f43259e33217e21455068"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_2f1a9c57ed5f43259e33217e21455068"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_22bc556d532d4520a3ba57e860fd19ce"
          xlink:label="Fact_22bc556d532d4520a3ba57e860fd19ce"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_22bc556d532d4520a3ba57e860fd19ce"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_0ddc9fddd34c4b8ebc3661af60847db3"
          xlink:label="Fact_0ddc9fddd34c4b8ebc3661af60847db3"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_0ddc9fddd34c4b8ebc3661af60847db3"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_3de40eda83a949d398b85b4d8623bb00"
          xlink:label="Fact_3de40eda83a949d398b85b4d8623bb00"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_3de40eda83a949d398b85b4d8623bb00"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_266e1d5ef9fc49278da67365acd002f2"
          xlink:label="Fact_266e1d5ef9fc49278da67365acd002f2"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_266e1d5ef9fc49278da67365acd002f2"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_4089a58279474338b8171e084881ec71"
          xlink:label="Fact_4089a58279474338b8171e084881ec71"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_4089a58279474338b8171e084881ec71"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_dba0aa5ba3d549caa6fe0049b46c9618"
          xlink:label="Fact_dba0aa5ba3d549caa6fe0049b46c9618"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_dba0aa5ba3d549caa6fe0049b46c9618"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_a6b804d848484f39b7f861b29939edbd"
          xlink:label="Fact_a6b804d848484f39b7f861b29939edbd"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_a6b804d848484f39b7f861b29939edbd"
          xlink:to="Foot_d8a533a5ae26463280e109aabb6faf35"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
